diff options
author | Faisal Latif <faisal.latif@intel.com> | 2016-02-26 09:18:05 -0600 |
---|---|---|
committer | Doug Ledford <dledford@redhat.com> | 2016-03-16 13:48:32 -0400 |
commit | dafb5587178afe8abf85f3ae91bbc88de9e54782 (patch) | |
tree | dc4d80e87a0c3a9a3ab70bf485fe79776bd3c7d2 /drivers/infiniband/core/iwpm_util.h | |
parent | c1340e8aa628d65bcb5c5b7e332bde8a17851ebf (diff) | |
download | linux-dafb5587178afe8abf85f3ae91bbc88de9e54782.tar.gz linux-dafb5587178afe8abf85f3ae91bbc88de9e54782.tar.bz2 linux-dafb5587178afe8abf85f3ae91bbc88de9e54782.zip |
iwpm: crash fix for large connections test
During large connection test, there is a crash at wake_up() in the callback as waitq is
not yet initialized. Callback can happen before iwpm_wait_complete_req() is called to
initialize waitq.
To resolve, using signaling semaphore instead of waitq.
Signed-off-by: Mustafa Ismail <mustafa.ismail@intel.com>
Reviewed-by: Tatyana E Nikolova <tatyana.e.nikolova@intel.com>
Signed-off-by: Faisal Latif <faisal.latif@intel.com>
Reviewed-by: Steve Wise <swise@opengridcomputing.com>
Tested-by: Steve Wise <swise@opengridcomputing.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
Diffstat (limited to 'drivers/infiniband/core/iwpm_util.h')
-rw-r--r-- | drivers/infiniband/core/iwpm_util.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/infiniband/core/iwpm_util.h b/drivers/infiniband/core/iwpm_util.h index b7b9e194ce81..af1fc14a0d3d 100644 --- a/drivers/infiniband/core/iwpm_util.h +++ b/drivers/infiniband/core/iwpm_util.h @@ -69,7 +69,7 @@ struct iwpm_nlmsg_request { u8 nl_client; u8 request_done; u16 err_code; - wait_queue_head_t waitq; + struct semaphore sem; struct kref kref; }; |