summaryrefslogtreecommitdiff
path: root/drivers/infiniband/core/uverbs.h
diff options
context:
space:
mode:
authorRoland Dreier <rolandd@cisco.com>2005-10-30 20:50:04 +0300
committerRoland Dreier <rolandd@cisco.com>2005-10-31 18:10:32 +0300
commit7162a3e0db34e914a8bc5bf74bbae0b386310cf8 (patch)
treeffd7eba03f29dd2932dd32ac4adc2921bde7644b /drivers/infiniband/core/uverbs.h
parenta20583a7c2e35d80b1dfc1f60c9729498838725e (diff)
downloadlinux-7162a3e0db34e914a8bc5bf74bbae0b386310cf8.tar.xz
[IB] uverbs: Avoid NULL pointer deref on CQ async event
Userspace CQs that have no completion event channel attached end up with their cq_context set to NULL. However, asynchronous events like "CQ overrun" can still occur on such CQs, so add a uverbs_file member to struct ib_ucq_object that we can follow to deliver these events. Signed-off-by: Roland Dreier <rolandd@cisco.com>
Diffstat (limited to 'drivers/infiniband/core/uverbs.h')
-rw-r--r--drivers/infiniband/core/uverbs.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/infiniband/core/uverbs.h b/drivers/infiniband/core/uverbs.h
index 031cdf3c066d..ecb830127865 100644
--- a/drivers/infiniband/core/uverbs.h
+++ b/drivers/infiniband/core/uverbs.h
@@ -113,6 +113,7 @@ struct ib_uevent_object {
struct ib_ucq_object {
struct ib_uobject uobject;
+ struct ib_uverbs_file *uverbs_file;
struct list_head comp_list;
struct list_head async_list;
u32 comp_events_reported;