Lines Matching refs:queue
942 void crypto_init_queue(struct crypto_queue *queue, unsigned int max_qlen)
944 INIT_LIST_HEAD(&queue->list);
945 queue->backlog = &queue->list;
946 queue->qlen = 0;
947 queue->max_qlen = max_qlen;
951 int crypto_enqueue_request(struct crypto_queue *queue,
956 if (unlikely(queue->qlen >= queue->max_qlen)) {
962 if (queue->backlog == &queue->list)
963 queue->backlog = &request->list;
966 queue->qlen++;
967 list_add_tail(&request->list, &queue->list);
974 void crypto_enqueue_request_head(struct crypto_queue *queue,
977 if (unlikely(queue->qlen >= queue->max_qlen))
978 queue->backlog = queue->backlog->prev;
980 queue->qlen++;
981 list_add(&request->list, &queue->list);
985 struct crypto_async_request *crypto_dequeue_request(struct crypto_queue *queue)
989 if (unlikely(!queue->qlen))
992 queue->qlen--;
994 if (queue->backlog != &queue->list)
995 queue->backlog = queue->backlog->next;
997 request = queue->list.next;