diff options
author | Srikanth Jampala <Jampala.Srikanth@cavium.com> | 2018-08-22 12:40:52 +0530 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2018-08-25 19:50:44 +0800 |
commit | 3d7c82060d1fe65bde4023aac41a0b1bd7718e07 (patch) | |
tree | dedb0fda56b347d8bd3d7ca124ca17c68d36d0a2 /drivers/crypto/cavium/nitrox/nitrox_dev.h | |
parent | 0522236d4f9c5ab2e79889cb020d1acbe5da416e (diff) |
crypto: cavium/nitrox - fix for command corruption in queue full case with backlog submissions.
Earlier used to post the current command without checking queue full
after backlog submissions. So, post the current command only after
confirming the space in queue after backlog submissions.
Maintain host write index instead of reading device registers
to get the next free slot to post the command.
Return -ENOSPC in queue full case.
Signed-off-by: Srikanth Jampala <Jampala.Srikanth@cavium.com>
Reviewed-by: Gadam Sreerama <sgadam@cavium.com>
Tested-by: Jha, Chandan <Chandan.Jha@cavium.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'drivers/crypto/cavium/nitrox/nitrox_dev.h')
-rw-r--r-- | drivers/crypto/cavium/nitrox/nitrox_dev.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/crypto/cavium/nitrox/nitrox_dev.h b/drivers/crypto/cavium/nitrox/nitrox_dev.h index 9a476bb6d4c7..af596455b420 100644 --- a/drivers/crypto/cavium/nitrox/nitrox_dev.h +++ b/drivers/crypto/cavium/nitrox/nitrox_dev.h @@ -35,6 +35,7 @@ struct nitrox_cmdq { /* requests in backlog queues */ atomic_t backlog_count; + int write_idx; /* command size 32B/64B */ u8 instr_size; u8 qno; @@ -87,7 +88,7 @@ struct nitrox_bh { struct bh_data *slc; }; -/* NITROX-5 driver state */ +/* NITROX-V driver state */ #define NITROX_UCODE_LOADED 0 #define NITROX_READY 1 |