Lines Matching defs:ctx_list
23 static struct crypto_ctx_list ctx_list;
116 spin_lock(&ctx_list.ctx_lock);
117 if (!list_empty(&ctx_list.idle_ctx)) {
118 ctx = list_entry(ctx_list.idle_ctx.next,
122 spin_unlock(&ctx_list.ctx_lock);
126 if (ctx_list.avail_ctx > num_online_cpus()) {
127 spin_unlock(&ctx_list.ctx_lock);
128 wait_event(ctx_list.ctx_wait,
129 !list_empty(&ctx_list.idle_ctx));
133 ctx_list.avail_ctx++;
134 spin_unlock(&ctx_list.ctx_lock);
138 spin_lock(&ctx_list.ctx_lock);
139 ctx_list.avail_ctx--;
140 spin_unlock(&ctx_list.ctx_lock);
141 wait_event(ctx_list.ctx_wait,
142 !list_empty(&ctx_list.idle_ctx));
155 spin_lock(&ctx_list.ctx_lock);
156 if (ctx_list.avail_ctx <= num_online_cpus()) {
157 list_add(&ctx->list, &ctx_list.idle_ctx);
158 spin_unlock(&ctx_list.ctx_lock);
159 wake_up(&ctx_list.ctx_wait);
163 ctx_list.avail_ctx--;
164 spin_unlock(&ctx_list.ctx_lock);
243 while (!list_empty(&ctx_list.idle_ctx)) {
244 ctx = list_entry(ctx_list.idle_ctx.next,
256 spin_lock_init(&ctx_list.ctx_lock);
257 INIT_LIST_HEAD(&ctx_list.idle_ctx);
258 init_waitqueue_head(&ctx_list.ctx_wait);
259 ctx_list.avail_ctx = 1;
264 list_add(&ctx->list, &ctx_list.idle_ctx);