IB/core: Add GID change event
authorOr Gerlitz <ogerlitz@mellanox.com>
Wed, 15 Jun 2011 14:39:29 +0000 (14:39 +0000)
committerRoland Dreier <roland@purestorage.com>
Tue, 19 Jul 2011 04:04:30 +0000 (21:04 -0700)
Add IB GID change event type.  This is needed for IBoE when the HW
driver updates the GID (e.g when new VLANs are added/deleted) table
and the change should be reflected to the IB core cache.

Signed-off-by: Eli Cohen <eli@mellanox.co.il>
Signed-off-by: Or Gerlitz <ogerlitz@mellanox.co.il>
Signed-off-by: Roland Dreier <roland@purestorage.com>
drivers/infiniband/core/cache.c
include/rdma/ib_verbs.h

index f9ba7d7..9353992 100644 (file)
@@ -302,7 +302,8 @@ static void ib_cache_event(struct ib_event_handler *handler,
            event->event == IB_EVENT_LID_CHANGE  ||
            event->event == IB_EVENT_PKEY_CHANGE ||
            event->event == IB_EVENT_SM_CHANGE   ||
-           event->event == IB_EVENT_CLIENT_REREGISTER) {
+           event->event == IB_EVENT_CLIENT_REREGISTER ||
+           event->event == IB_EVENT_GID_CHANGE) {
                work = kmalloc(sizeof *work, GFP_ATOMIC);
                if (work) {
                        INIT_WORK(&work->work, ib_cache_task);
index 55cd0a0..bf4306a 100644 (file)
@@ -350,7 +350,8 @@ enum ib_event_type {
        IB_EVENT_SRQ_ERR,
        IB_EVENT_SRQ_LIMIT_REACHED,
        IB_EVENT_QP_LAST_WQE_REACHED,
-       IB_EVENT_CLIENT_REREGISTER
+       IB_EVENT_CLIENT_REREGISTER,
+       IB_EVENT_GID_CHANGE,
 };
 
 struct ib_event {