Lines Matching refs:crypto_cmd
93 struct ccp_crypto_cmd *crypto_cmd, struct ccp_crypto_cmd **backlog) in ccp_crypto_cmd_complete() argument
105 tmp = crypto_cmd; in ccp_crypto_cmd_complete()
107 if (crypto_cmd->tfm != tmp->tfm) in ccp_crypto_cmd_complete()
119 if (req_queue.backlog == &crypto_cmd->entry) in ccp_crypto_cmd_complete()
120 req_queue.backlog = crypto_cmd->entry.next; in ccp_crypto_cmd_complete()
127 if (req_queue.backlog == &crypto_cmd->entry) in ccp_crypto_cmd_complete()
128 req_queue.backlog = crypto_cmd->entry.next; in ccp_crypto_cmd_complete()
133 list_del(&crypto_cmd->entry); in ccp_crypto_cmd_complete()
142 struct ccp_crypto_cmd *crypto_cmd = data; in ccp_crypto_complete() local
144 struct crypto_async_request *req = crypto_cmd->req; in ccp_crypto_complete()
150 if (crypto_cmd->ret == -EBUSY) { in ccp_crypto_complete()
151 crypto_cmd->ret = -EINPROGRESS; in ccp_crypto_complete()
162 held = ccp_crypto_cmd_complete(crypto_cmd, &backlog); in ccp_crypto_complete()
169 if (crypto_cmd->ret == -EBUSY) in ccp_crypto_complete()
204 kfree(crypto_cmd); in ccp_crypto_complete()
207 static int ccp_crypto_enqueue_cmd(struct ccp_crypto_cmd *crypto_cmd) in ccp_crypto_enqueue_cmd() argument
218 if (!(crypto_cmd->cmd->flags & CCP_CMD_MAY_BACKLOG)) { in ccp_crypto_enqueue_cmd()
229 if (crypto_cmd->tfm != tmp->tfm) in ccp_crypto_enqueue_cmd()
237 ret = ccp_enqueue_cmd(crypto_cmd->cmd); in ccp_crypto_enqueue_cmd()
245 req_queue.backlog = &crypto_cmd->entry; in ccp_crypto_enqueue_cmd()
247 crypto_cmd->ret = ret; in ccp_crypto_enqueue_cmd()
250 list_add_tail(&crypto_cmd->entry, &req_queue.cmds); in ccp_crypto_enqueue_cmd()
258 kfree(crypto_cmd); in ccp_crypto_enqueue_cmd()
273 struct ccp_crypto_cmd *crypto_cmd; in ccp_crypto_enqueue_request() local
278 crypto_cmd = kzalloc(sizeof(*crypto_cmd), gfp); in ccp_crypto_enqueue_request()
279 if (!crypto_cmd) in ccp_crypto_enqueue_request()
287 crypto_cmd->cmd = cmd; in ccp_crypto_enqueue_request()
288 crypto_cmd->req = req; in ccp_crypto_enqueue_request()
289 crypto_cmd->tfm = req->tfm; in ccp_crypto_enqueue_request()
292 cmd->data = crypto_cmd; in ccp_crypto_enqueue_request()
299 return ccp_crypto_enqueue_cmd(crypto_cmd); in ccp_crypto_enqueue_request()