[INC, WinVerbs] Define additional async event types for GID, LID, PKey, and SM change...
authorleonidk <leonidk@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Tue, 12 May 2009 13:05:24 +0000 (13:05 +0000)
committerleonidk <leonidk@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Tue, 12 May 2009 13:05:24 +0000 (13:05 +0000)
This avoids converting LID change events seen by the mlx4 driver into local fatal errors.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
git-svn-id: svn://openib.tc.cornell.edu/gen1/trunk@2165 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

core/winverbs/kernel/wv_device.c
hw/mlx4/kernel/bus/inc/ib_verbs.h
hw/mthca/kernel/ib_verbs.h
inc/iba/ib_types.h
ulp/opensm/user/include/iba/ib_types_extended.h

index 0620d85..cd97ae0 100644 (file)
@@ -77,8 +77,14 @@ static UINT32 WvDeviceConvertEvent(ib_async_event_t event)
        case IB_AE_PORT_DOWN:\r
                return WV_IO_EVENT_STATE;\r
        case IB_AE_CLIENT_REREGISTER:\r
+       case IB_AE_SM_CHANGE:\r
                return WV_IO_EVENT_MANAGEMENT;\r
-       // TODO: report LID / GID / SM / PKey changes\r
+       case IB_AE_GID_CHANGE:\r
+               return WV_IO_EVENT_ADDRESS;\r
+       case IB_AE_LID_CHANGE:\r
+               return WV_IO_EVENT_LINK_ADDRESS;\r
+       case IB_AE_PKEY_CHANGE:\r
+               return WV_IO_EVENT_PARTITION;\r
        default:\r
                return 0;\r
        }\r
index 656b0a3..d4964e4 100644 (file)
@@ -274,10 +274,10 @@ enum ib_event_type {
        IB_EVENT_RESET_CLIENT                           = IB_AE_RESET_CLIENT,   // device will be reset upon client request\r
        IB_EVENT_RESET_END                                      = IB_AE_RESET_END,              // device has been reset \r
        IB_EVENT_RESET_FAILED                           = IB_AE_RESET_FAILED,           // device has been reset \r
-       IB_EVENT_LID_CHANGE                                     = IB_AE_UNKNOWN + 1,\r
-       IB_EVENT_PKEY_CHANGE,\r
-       IB_EVENT_SM_CHANGE,\r
-       IB_EVENT_CLIENT_REREGISTER\r
+       IB_EVENT_LID_CHANGE                             = IB_AE_LID_CHANGE,\r
+       IB_EVENT_CLIENT_REREGISTER                      = IB_AE_CLIENT_REREGISTER,\r
+       IB_EVENT_PKEY_CHANGE                            = IB_AE_PKEY_CHANGE,\r
+       IB_EVENT_SM_CHANGE                                      = IB_AE_SM_CHANGE\r
 };\r
 \r
 struct ib_event {\r
index bc24e4d..35125ec 100644 (file)
@@ -251,9 +251,10 @@ enum ib_event_type {
        IB_EVENT_SRQ_LIMIT_REACHED                              = IB_AE_SRQ_LIMIT_REACHED,\r
        IB_EVENT_SRQ_CATAS_ERROR                                        = IB_AE_SRQ_CATAS_ERROR,\r
        IB_EVENT_SRQ_QP_LAST_WQE_REACHED                = IB_AE_SRQ_QP_LAST_WQE_REACHED,\r
-       IB_EVENT_LID_CHANGE                                                     = IB_AE_UNKNOWN + 1,\r
-       IB_EVENT_PKEY_CHANGE,\r
-       IB_EVENT_SM_CHANGE\r
+       IB_EVENT_LID_CHANGE                             = IB_AE_LID_CHANGE,\r
+       IB_EVENT_CLIENT_REREGISTER                      = IB_AE_CLIENT_REREGISTER,\r
+       IB_EVENT_PKEY_CHANGE                            = IB_AE_PKEY_CHANGE,\r
+       IB_EVENT_SM_CHANGE                                      = IB_AE_SM_CHANGE\r
 };\r
 \r
 struct ib_event {\r
index aaa497b..6d61ff6 100644 (file)
@@ -8407,6 +8407,10 @@ typedef enum _ib_async_event_t
        IB_AE_RESET_CLIENT,\r
        IB_AE_RESET_END,\r
        IB_AE_RESET_FAILED,\r
+       IB_AE_LID_CHANGE,\r
+       IB_AE_PKEY_CHANGE,\r
+       IB_AE_SM_CHANGE,\r
+       IB_AE_GID_CHANGE,\r
        IB_AE_UNKNOWN           /* ALWAYS LAST ENUM VALUE */\r
 \r
 }      ib_async_event_t;\r
index a0f6268..edd978d 100644 (file)
@@ -234,6 +234,14 @@ typedef enum _ib_async_event_t
        IB_AE_SRQ_LIMIT_REACHED,\r
        IB_AE_SRQ_CATAS_ERROR,\r
        IB_AE_SRQ_QP_LAST_WQE_REACHED,\r
+       IB_AE_RESET_DRIVER,\r
+       IB_AE_RESET_CLIENT,\r
+       IB_AE_RESET_END,\r
+       IB_AE_RESET_FAILED,\r
+       IB_AE_LID_CHANGE,\r
+       IB_AE_PKEY_CHANGE,\r
+       IB_AE_SM_CHANGE,\r
+       IB_AE_GID_CHANGE,\r
        IB_AE_UNKNOWN           /* ALWAYS LAST ENUM VALUE */\r
 \r
 }      ib_async_event_t;\r