crypto: ccp - use -ENOSPC for transient busy indication
Replace -EBUSY with -ENOSPC when reporting transient busy indication in the absence of backlog. Signed-off-by: Gilad Ben-Yossef <gilad@benyossef.com> Reviewed-by: Gary R Hook <gary.hook@amd.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
parent
6b80ea389a
commit
cfba73d25f
|
@ -222,9 +222,10 @@ static int ccp_crypto_enqueue_cmd(struct ccp_crypto_cmd *crypto_cmd)
|
|||
|
||||
/* Check if the cmd can/should be queued */
|
||||
if (req_queue.cmd_count >= CCP_CRYPTO_MAX_QLEN) {
|
||||
ret = -EBUSY;
|
||||
if (!(crypto_cmd->cmd->flags & CCP_CMD_MAY_BACKLOG))
|
||||
if (!(crypto_cmd->cmd->flags & CCP_CMD_MAY_BACKLOG)) {
|
||||
ret = -ENOSPC;
|
||||
goto e_lock;
|
||||
}
|
||||
}
|
||||
|
||||
/* Look for an entry with the same tfm. If there is a cmd
|
||||
|
@ -243,9 +244,6 @@ static int ccp_crypto_enqueue_cmd(struct ccp_crypto_cmd *crypto_cmd)
|
|||
ret = ccp_enqueue_cmd(crypto_cmd->cmd);
|
||||
if (!ccp_crypto_success(ret))
|
||||
goto e_lock; /* Error, don't queue it */
|
||||
if ((ret == -EBUSY) &&
|
||||
!(crypto_cmd->cmd->flags & CCP_CMD_MAY_BACKLOG))
|
||||
goto e_lock; /* Not backlogging, don't queue it */
|
||||
}
|
||||
|
||||
if (req_queue.cmd_count >= CCP_CRYPTO_MAX_QLEN) {
|
||||
|
|
|
@ -292,9 +292,12 @@ int ccp_enqueue_cmd(struct ccp_cmd *cmd)
|
|||
i = ccp->cmd_q_count;
|
||||
|
||||
if (ccp->cmd_count >= MAX_CMD_QLEN) {
|
||||
ret = -EBUSY;
|
||||
if (cmd->flags & CCP_CMD_MAY_BACKLOG)
|
||||
if (cmd->flags & CCP_CMD_MAY_BACKLOG) {
|
||||
ret = -EBUSY;
|
||||
list_add_tail(&cmd->entry, &ccp->backlog);
|
||||
} else {
|
||||
ret = -ENOSPC;
|
||||
}
|
||||
} else {
|
||||
ret = -EINPROGRESS;
|
||||
ccp->cmd_count++;
|
||||
|
|
Loading…
Reference in New Issue