diff options
author | Mike Marciniszyn <mike.marciniszyn@intel.com> | 2016-05-12 10:23:03 -0700 |
---|---|---|
committer | Doug Ledford <dledford@redhat.com> | 2016-05-13 19:39:16 -0400 |
commit | b96b040445f5d84fb8aa2ff986be71f5069c976e (patch) | |
tree | 675a4b2244db6d171feabd77569eb72d9fca7660 /drivers/staging | |
parent | 17f15bf66884b9e33c5005ee0149b039af8f7af2 (diff) | |
download | linux-b96b040445f5d84fb8aa2ff986be71f5069c976e.tar.gz linux-b96b040445f5d84fb8aa2ff986be71f5069c976e.tar.bz2 linux-b96b040445f5d84fb8aa2ff986be71f5069c976e.zip |
IB/hfi1: Fix potential panic with sdma drained mechanism
The guard is backwards, potentially causing the SDMA client
to panic if a wait structure was not specified.
psm and verbs are not exposed to the issue, but fix the
code just to be correct.
Fixes: a545f5308b6c ("staging/rdma/hfi: fix CQ completion order issue")
Reviewed-by: Dennis Dalessandro <dennis.dalessandro@intel.com>
Signed-off-by: Mike Marciniszyn <mike.marciniszyn@intel.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
Diffstat (limited to 'drivers/staging')
-rw-r--r-- | drivers/staging/rdma/hfi1/sdma.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/staging/rdma/hfi1/sdma.c b/drivers/staging/rdma/hfi1/sdma.c index abb8ebc1fcac..e938017f78e3 100644 --- a/drivers/staging/rdma/hfi1/sdma.c +++ b/drivers/staging/rdma/hfi1/sdma.c @@ -376,7 +376,7 @@ static inline void complete_tx(struct sdma_engine *sde, sdma_txclean(sde->dd, tx); if (complete) (*complete)(tx, res); - if (iowait_sdma_dec(wait) && wait) + if (wait && iowait_sdma_dec(wait)) iowait_drain_wakeup(wait); } |