diff options
| author | Linus Walleij <[email protected]> | 2019-02-11 09:17:23 +0100 |
|---|---|---|
| committer | Linus Walleij <[email protected]> | 2019-02-11 09:17:23 +0100 |
| commit | e65372124cd749ebbe4ac2abe5a511d7d1ac68db (patch) | |
| tree | 1f9fd7cec6ffba19c76fff1e82c562fa1adae5da /drivers/crypto/cavium/nitrox/nitrox_reqmgr.c | |
| parent | a3240f09307ac978270d423b542f229e2ccc07b8 (diff) | |
| parent | d13937116f1e82bf508a6325111b322c30c85eb9 (diff) | |
Merge tag 'v5.0-rc6' into devel
Linux 5.0-rc6
Diffstat (limited to 'drivers/crypto/cavium/nitrox/nitrox_reqmgr.c')
| -rw-r--r-- | drivers/crypto/cavium/nitrox/nitrox_reqmgr.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/crypto/cavium/nitrox/nitrox_reqmgr.c b/drivers/crypto/cavium/nitrox/nitrox_reqmgr.c index e34e4df8fd24..4c97478d44bd 100644 --- a/drivers/crypto/cavium/nitrox/nitrox_reqmgr.c +++ b/drivers/crypto/cavium/nitrox/nitrox_reqmgr.c @@ -537,6 +537,8 @@ static void process_response_list(struct nitrox_cmdq *cmdq) struct nitrox_device *ndev = cmdq->ndev; struct nitrox_softreq *sr; int req_completed = 0, err = 0, budget; + completion_t callback; + void *cb_arg; /* check all pending requests */ budget = atomic_read(&cmdq->pending_count); @@ -564,13 +566,13 @@ static void process_response_list(struct nitrox_cmdq *cmdq) smp_mb__after_atomic(); /* remove from response list */ response_list_del(sr, cmdq); - /* ORH error code */ err = READ_ONCE(*sr->resp.orh) & 0xff; + callback = sr->callback; + cb_arg = sr->cb_arg; softreq_destroy(sr); - - if (sr->callback) - sr->callback(sr->cb_arg, err); + if (callback) + callback(cb_arg, err); req_completed++; } |