diff mbox

[v3] Add trap details to notice log message

Message ID a889a33d-2f26-4432-b912-3d531a60e019@default (mailing list archive)
State Accepted
Delegated to: Hal Rosenstock
Headers show

Commit Message

Line Holen May 30, 2013, 6:16 p.m. UTC
Signed-off-by: Line Holen <Line.Holen@oracle.com>

---

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

Hefty, Sean May 30, 2013, 6:24 p.m. UTC | #1
PiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9pYmEvaWJfdHlwZXMuaCBiL2luY2x1ZGUvaWJhL2liX3R5
cGVzLmgNCj4gaW5kZXggZDVjZjI4Ny4uNWMyMzhhZSAxMDA2NDQNCj4gLS0tIGEvaW5jbHVkZS9p
YmEvaWJfdHlwZXMuaA0KPiArKysgYi9pbmNsdWRlL2liYS9pYl90eXBlcy5oDQo+IEBAIC0zLDYg
KzMsNyBAQA0KPiAgICogQ29weXJpZ2h0IChjKSAyMDAyLTIwMTEgTWVsbGFub3ggVGVjaG5vbG9n
aWVzIExURC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCj4gICAqIENvcHlyaWdodCAoYykgMTk5Ni0y
MDAzIEludGVsIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLg0KPiAgICogQ29weXJp
Z2h0IChjKSAyMDA5IEhOUiBDb25zdWx0aW5nLiBBbGwgcmlnaHRzIHJlc2VydmVkLg0KPiArICog
Q29weXJpZ2h0IChjKSAyMDEzIE9yYWNsZSBhbmQvb3IgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuDQo+ICAgKg0KPiAgICogVGhpcyBzb2Z0d2FyZSBpcyBhdmFpbGFibGUgdG8g
eW91IHVuZGVyIGEgY2hvaWNlIG9mIG9uZSBvZiB0d28NCj4gICAqIGxpY2Vuc2VzLiAgWW91IG1h
eSBjaG9vc2UgdG8gYmUgbGljZW5zZWQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUNCj4gQEAg
LTc2MTksNiArNzYyMCwyMyBAQCBpYl9tZW1iZXJfc2V0X2pvaW5fc3RhdGUoSU4gT1VUIGliX21l
bWJlcl9yZWNfdCAqDQo+IHBfbWNfcmVjLA0KPiAgI2RlZmluZSBJQl9OT1RJQ0VfVFlQRV9JTkZP
CQkJCTB4MDQNCj4gICNkZWZpbmUgSUJfTk9USUNFX1RZUEVfRU1QVFkJCQkJMHg3Rg0KPiANCj4g
KyNkZWZpbmUgU01fR0lEX0lOX1NFUlZJQ0VfVFJBUAkJCQk2NA0KPiArI2RlZmluZSBTTV9HSURf
T1VUX09GX1NFUlZJQ0VfVFJBUAkJCTY1DQo+ICsjZGVmaW5lIFNNX01HSURfQ1JFQVRFRF9UUkFQ
CQkJCTY2DQo+ICsjZGVmaW5lIFNNX01HSURfREVTVFJPWUVEX1RSQVAJCQkJNjcNCj4gKyNkZWZp
bmUgU01fVU5QQVRIX1RSQVAJCQkJCTY4DQo+ICsjZGVmaW5lIFNNX1JFUEFUSF9UUkFQCQkJCQk2
OQ0KPiArI2RlZmluZSBTTV9MSU5LX1NUQVRFX0NIQU5HRURfVFJBUAkJCTEyOA0KPiArI2RlZmlu
ZSBTTV9MSU5LX0lOVEVHUklUWV9USFJFU0hPTERfVFJBUAkJMTI5DQo+ICsjZGVmaW5lIFNNX0JV
RkZFUl9PVkVSUlVOX1RIUkVTSE9MRF9UUkFQCQkxMzANCj4gKyNkZWZpbmUgU01fV0FUQ0hET0df
VElNRVJfRVhQSVJFRF9UUkFQCQkJMTMxDQo+ICsjZGVmaW5lIFNNX0xPQ0FMX0NIQU5HRVNfVFJB
UAkJCQkxNDQNCj4gKyNkZWZpbmUgU01fU1lTX0lNR19HVUlEX0NIQU5HRURfVFJBUAkJCTE0NQ0K
PiArI2RlZmluZSBTTV9CQURfTUtFWV9UUkFQCQkJCTI1Ng0KPiArI2RlZmluZSBTTV9CQURfUEtF
WV9UUkFQCQkJCTI1Nw0KPiArI2RlZmluZSBTTV9CQURfUUtFWV9UUkFQCQkJCTI1OA0KPiArI2Rl
ZmluZSBTTV9CQURfU1dJVENIX1BLRVlfVFJBUAkJCQkyNTkNCg0KVGhlc2UgZGVmaW5pdGlvbnMg
Y291bGQgZ28gaW50byBsaWJ1Ym1hZC9pbmNsdWRlL2luZmluaWJhbmQvdW1hZF9zbS5oLg0K
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Line Holen May 31, 2013, 8:23 a.m. UTC | #2
On 05/30/13 20:24, Hefty, Sean wrote:
>> diff --git a/include/iba/ib_types.h b/include/iba/ib_types.h
>> index d5cf287..5c238ae 100644
>> --- a/include/iba/ib_types.h
>> +++ b/include/iba/ib_types.h
>> @@ -3,6 +3,7 @@
>>    * Copyright (c) 2002-2011 Mellanox Technologies LTD. All rights reserved.
>>    * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
>>    * Copyright (c) 2009 HNR Consulting. All rights reserved.
>> + * Copyright (c) 2013 Oracle and/or its affiliates. All rights reserved.
>>    *
>>    * This software is available to you under a choice of one of two
>>    * licenses.  You may choose to be licensed under the terms of the GNU
>> @@ -7619,6 +7620,23 @@ ib_member_set_join_state(IN OUT ib_member_rec_t *
>> p_mc_rec,
>>   #define IB_NOTICE_TYPE_INFO				0x04
>>   #define IB_NOTICE_TYPE_EMPTY				0x7F
>>
>> +#define SM_GID_IN_SERVICE_TRAP				64
>> +#define SM_GID_OUT_OF_SERVICE_TRAP			65
>> +#define SM_MGID_CREATED_TRAP				66
>> +#define SM_MGID_DESTROYED_TRAP				67
>> +#define SM_UNPATH_TRAP					68
>> +#define SM_REPATH_TRAP					69
>> +#define SM_LINK_STATE_CHANGED_TRAP			128
>> +#define SM_LINK_INTEGRITY_THRESHOLD_TRAP		129
>> +#define SM_BUFFER_OVERRUN_THRESHOLD_TRAP		130
>> +#define SM_WATCHDOG_TIMER_EXPIRED_TRAP			131
>> +#define SM_LOCAL_CHANGES_TRAP				144
>> +#define SM_SYS_IMG_GUID_CHANGED_TRAP			145
>> +#define SM_BAD_MKEY_TRAP				256
>> +#define SM_BAD_PKEY_TRAP				257
>> +#define SM_BAD_QKEY_TRAP				258
>> +#define SM_BAD_SWITCH_PKEY_TRAP				259
> These definitions could go into libubmad/include/infiniband/umad_sm.h.
Are you suggesting to do this in addition to ib_types.h or instead of ?
umad_sm.h seems to hold only a small subset of what's found in ib_types.h.

Line

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Hefty, Sean May 31, 2013, 2:40 p.m. UTC | #3
PiBBcmUgeW91IHN1Z2dlc3RpbmcgdG8gZG8gdGhpcyBpbiBhZGRpdGlvbiB0byBpYl90eXBlcy5o
IG9yIGluc3RlYWQgb2YgPw0KPiB1bWFkX3NtLmggc2VlbXMgdG8gaG9sZCBvbmx5IGEgc21hbGwg
c3Vic2V0IG9mIHdoYXQncyBmb3VuZCBpbiBpYl90eXBlcy5oLg0KDQp1bWFkX3NtLmggd2FzIG9u
bHkgcmVjZW50bHkgYWRkZWQuICBJJ20gc3VnZ2VzdGluZyB0byBwdXQgdGhlIGRlZmluaXRpb25z
IHRoZXJlIGluc3RlYWQgb2Ygd2l0aGluIHRoZSBvcGVuc20gaGVhZGVyIGZpbGUsIHNvIHRoYXQg
dGhlIGRlZmluaXRpb25zIGFyZSBhdmFpbGFibGUgdG8gYXBwbGljYXRpb25zIG90aGVyIHRoYW4g
b3BlbnNtLg0K
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Hal Rosenstock May 31, 2013, 3:43 p.m. UTC | #4
On 5/31/2013 10:40 AM, Hefty, Sean wrote:
>> Are you suggesting to do this in addition to ib_types.h or instead of ?
>> umad_sm.h seems to hold only a small subset of what's found in ib_types.h.
> 
> umad_sm.h was only recently added.  

and there is no release yet with those files.

> I'm suggesting to put the definitions there instead of within the opensm header file, so that the definitions are available to applications other than opensm.

My preference would be in addition to rather than instead of. In the
future once there is libibumad release in the field for some time with
these headers, then OpenSM can migrate definitions as makes sense.

-- Hal
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Line Holen May 31, 2013, 4:44 p.m. UTC | #5
On 05/31/13 17:43, Hal Rosenstock wrote:
> On 5/31/2013 10:40 AM, Hefty, Sean wrote:
>>> Are you suggesting to do this in addition to ib_types.h or instead of ?
>>> umad_sm.h seems to hold only a small subset of what's found in ib_types.h.
>> umad_sm.h was only recently added.
> and there is no release yet with those files.
>
>> I'm suggesting to put the definitions there instead of within the opensm header file, so that the definitions are available to applications other than opensm.
> My preference would be in addition to rather than instead of. In the
> future once there is libibumad release in the field for some time with
> these headers, then OpenSM can migrate definitions as makes sense.
>
> -- Hal
OK, so shall I send a v4 patch with both header files or can I do a 
second separate patch
for the umad_sm.h file ?

Line

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Hal Rosenstock May 31, 2013, 4:46 p.m. UTC | #6
On 5/31/2013 12:44 PM, Line Holen wrote:
> On 05/31/13 17:43, Hal Rosenstock wrote:
>> On 5/31/2013 10:40 AM, Hefty, Sean wrote:
>>>> Are you suggesting to do this in addition to ib_types.h or instead of ?
>>>> umad_sm.h seems to hold only a small subset of what's found in
>>>> ib_types.h.
>>> umad_sm.h was only recently added.
>> and there is no release yet with those files.
>>
>>> I'm suggesting to put the definitions there instead of within the
>>> opensm header file, so that the definitions are available to
>>> applications other than opensm.
>> My preference would be in addition to rather than instead of. In the
>> future once there is libibumad release in the field for some time with
>> these headers, then OpenSM can migrate definitions as makes sense.
>>
>> -- Hal
> OK, so shall I send a v4 patch with both header files or can I do a
> second separate patch
> for the umad_sm.h file ?

From my perspective, a second patch for umad_sm.h would suffice. Thanks.

-- Hal

> Line
> 
> 

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Hal Rosenstock June 4, 2013, 10:42 a.m. UTC | #7
On 5/30/2013 2:16 PM, Line Holen wrote:
> Signed-off-by: Line Holen <Line.Holen@oracle.com>

Thanks. Applied.

-- Hal

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/include/iba/ib_types.h b/include/iba/ib_types.h
index d5cf287..5c238ae 100644
--- a/include/iba/ib_types.h
+++ b/include/iba/ib_types.h
@@ -3,6 +3,7 @@ 
  * Copyright (c) 2002-2011 Mellanox Technologies LTD. All rights reserved.
  * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
  * Copyright (c) 2009 HNR Consulting. All rights reserved.
+ * Copyright (c) 2013 Oracle and/or its affiliates. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -7619,6 +7620,23 @@  ib_member_set_join_state(IN OUT ib_member_rec_t * p_mc_rec,
 #define IB_NOTICE_TYPE_INFO				0x04
 #define IB_NOTICE_TYPE_EMPTY				0x7F
 
+#define SM_GID_IN_SERVICE_TRAP				64
+#define SM_GID_OUT_OF_SERVICE_TRAP			65
+#define SM_MGID_CREATED_TRAP				66
+#define SM_MGID_DESTROYED_TRAP				67
+#define SM_UNPATH_TRAP					68
+#define SM_REPATH_TRAP					69
+#define SM_LINK_STATE_CHANGED_TRAP			128
+#define SM_LINK_INTEGRITY_THRESHOLD_TRAP		129
+#define SM_BUFFER_OVERRUN_THRESHOLD_TRAP		130
+#define SM_WATCHDOG_TIMER_EXPIRED_TRAP			131
+#define SM_LOCAL_CHANGES_TRAP				144
+#define SM_SYS_IMG_GUID_CHANGED_TRAP			145
+#define SM_BAD_MKEY_TRAP				256
+#define SM_BAD_PKEY_TRAP				257
+#define SM_BAD_QKEY_TRAP				258
+#define SM_BAD_SWITCH_PKEY_TRAP				259
+
 #include <complib/cl_packon.h>
 typedef struct _ib_mad_notice_attr	// Total Size calc  Accumulated
 {
diff --git a/opensm/osm_inform.c b/opensm/osm_inform.c
index f5abbc6..845ec7c 100644
--- a/opensm/osm_inform.c
+++ b/opensm/osm_inform.c
@@ -3,6 +3,7 @@ 
  * Copyright (c) 2002-2006 Mellanox Technologies LTD. All rights reserved.
  * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
  * Copyright (c) 2009 HNR Consulting. All rights reserved.
+ * Copyright (c) 2013 Oracle and/or its affiliates. All rights reserved.
  *
  * This software is available to you under a choice of one of two
  * licenses.  You may choose to be licensed under the terms of the GNU
@@ -316,7 +317,8 @@  static ib_api_status_t send_report(IN osm_infr_t * p_infr_rec,	/* the informinfo
 
 	if (!p_report_madw) {
 		OSM_LOG(p_log, OSM_LOG_ERROR, "ERR 0203: "
-			"osm_mad_pool_get failed\n");
+			"Cannot send report to LID %u, osm_mad_pool_get failed\n",
+			cl_ntoh16(p_infr_rec->report_addr.dest_lid));
 		status = IB_ERROR;
 		goto Exit;
 	}
@@ -582,8 +584,9 @@  Exit:
 static void log_notice(osm_log_t * log, osm_log_level_t level,
 		       ib_mad_notice_attr_t * ntc)
 {
-	char gid_str[INET6_ADDRSTRLEN];
+	char gid_str[INET6_ADDRSTRLEN], gid_str2[INET6_ADDRSTRLEN];
 	ib_gid_t *gid;
+	ib_gid_t *gid1, *gid2;
 
 	/* an official Event information log */
 	if (ib_notice_is_generic(ntc)) {
@@ -594,14 +597,145 @@  static void log_notice(osm_log_t * log, osm_log_level_t level,
 			gid = &ntc->data_details.ntc_64_67.gid;
 		else
 			gid = &ntc->issuer_gid;
-		OSM_LOG(log, level,
-			"Reporting Generic Notice type:%u num:%u (%s)"
-			" from LID:%u GID:%s\n",
-			ib_notice_get_type(ntc),
-			cl_ntoh16(ntc->g_or_v.generic.trap_num),
-			ib_get_trap_str(ntc->g_or_v.generic.trap_num),
-			cl_ntoh16(ntc->issuer_lid),
-			inet_ntop(AF_INET6, gid->raw, gid_str, sizeof gid_str));
+
+		switch (cl_ntoh16(ntc->g_or_v.generic.trap_num)) {
+		case SM_GID_IN_SERVICE_TRAP:
+		case SM_GID_OUT_OF_SERVICE_TRAP:
+			OSM_LOG(log, level,
+				"Reporting Informational Notice \"%s\", GID:%s\n",
+				ib_get_trap_str(ntc->g_or_v.generic.trap_num),
+				inet_ntop(AF_INET6, gid->raw, gid_str, sizeof gid_str));
+			break;
+		case SM_MGID_CREATED_TRAP:
+		case SM_MGID_DESTROYED_TRAP:
+			OSM_LOG(log, level,
+				"Reporting Informational Notice \"%s\", MGID:%s\n",
+				ib_get_trap_str(ntc->g_or_v.generic.trap_num),
+				inet_ntop(AF_INET6, gid->raw, gid_str, sizeof gid_str));
+			break;
+		case SM_UNPATH_TRAP:
+		case SM_REPATH_TRAP:
+			/* TODO: Fill in details once SM starts to use these traps */
+			OSM_LOG(log, level,
+				"Reporting Informational Notice \"%s\"n",
+				ib_get_trap_str(ntc->g_or_v.generic.trap_num));
+			break;
+		case SM_LINK_STATE_CHANGED_TRAP:
+			OSM_LOG(log, level,
+				"Reporting Urgent Notice \"%s\" from switch LID %u, "
+				"GUID 0x%016" PRIx64 "\n",
+				ib_get_trap_str(ntc->g_or_v.generic.trap_num),
+				cl_ntoh16(ntc->issuer_lid),
+				cl_ntoh64(gid->unicast.interface_id));
+			break;
+		case SM_LINK_INTEGRITY_THRESHOLD_TRAP:
+		case SM_BUFFER_OVERRUN_THRESHOLD_TRAP:
+		case SM_WATCHDOG_TIMER_EXPIRED_TRAP:
+			OSM_LOG(log, level,
+				"Reporting Urgent Notice \"%s\" from LID %u, "
+				"GUID 0x%016" PRIx64 ", port %u\n",
+				ib_get_trap_str(ntc->g_or_v.generic.trap_num),
+				cl_ntoh16(ntc->issuer_lid),
+				cl_ntoh64(gid->unicast.interface_id),
+				ntc->data_details.ntc_129_131.port_num);
+			break;
+		case SM_LOCAL_CHANGES_TRAP:
+			if (ntc->data_details.ntc_144.local_changes == 1)
+				OSM_LOG(log, level,
+					"Reporting Informational Notice \"%s\" from LID %u, "
+					"GUID 0x%016" PRIx64 ", ChangeFlags 0x%04x, "
+					"CapabilityMask2 0x%04x\n",
+					ib_get_trap_str(ntc->g_or_v.generic.trap_num),
+					cl_ntoh16(ntc->issuer_lid),
+					cl_ntoh64(gid->unicast.interface_id),
+					cl_ntoh16(ntc->data_details.ntc_144.change_flgs),
+					cl_ntoh16(ntc->data_details.ntc_144.cap_mask2));
+			else
+				OSM_LOG(log, level,
+					"Reporting Informational Notice \"%s\" from LID %u, "
+					"GUID 0x%016" PRIx64 ", new CapabilityMask 0x%08x\n",
+					ib_get_trap_str(ntc->g_or_v.generic.trap_num),
+					cl_ntoh16(ntc->issuer_lid),
+					cl_ntoh64(gid->unicast.interface_id),
+					cl_ntoh32(ntc->data_details.ntc_144.new_cap_mask));
+			break;
+		case SM_SYS_IMG_GUID_CHANGED_TRAP:
+			OSM_LOG(log, level,
+				"Reporting Informational Notice \"%s\" from LID %u, "
+				"GUID 0x%016" PRIx64 ", new SysImageGUID 0x%016" PRIx64 "\n",
+				ib_get_trap_str(ntc->g_or_v.generic.trap_num),
+				cl_ntoh16(ntc->issuer_lid),
+				cl_ntoh64(gid->unicast.interface_id),
+				cl_ntoh64(ntc->data_details.ntc_145.new_sys_guid));
+			break;
+		case SM_BAD_MKEY_TRAP:
+			OSM_LOG(log, level,
+				"Reporting Security Notice \"%s\" from LID %u, "
+				"GUID 0x%016" PRIx64 ", Method 0x%x, Attribute 0x%x, "
+				"AttrMod 0x%x, M_Key 0x%016" PRIx64 "\n",
+				ib_get_trap_str(ntc->g_or_v.generic.trap_num),
+				cl_ntoh16(ntc->issuer_lid),
+				cl_ntoh64(gid->unicast.interface_id),
+				ntc->data_details.ntc_256.method,
+				cl_ntoh16(ntc->data_details.ntc_256.attr_id),
+				cl_ntoh32(ntc->data_details.ntc_256.attr_mod),
+				cl_ntoh64(ntc->data_details.ntc_256.mkey));
+			break;
+		case SM_BAD_PKEY_TRAP:
+		case SM_BAD_QKEY_TRAP:
+			gid1 = &ntc->data_details.ntc_257_258.gid1;
+			gid2 = &ntc->data_details.ntc_257_258.gid2;
+			OSM_LOG(log, level,
+				"Reporting Security Notice \"%s\" from LID %u, "
+				"GUID 0x%016" PRIx64 " : LID1 %u, LID2 %u, %s 0x%x, "
+				"SL %d, QP1 0x%x, QP2 0x%x, GID1 %s, GID2 %s\n",
+				ib_get_trap_str(ntc->g_or_v.generic.trap_num),
+				cl_ntoh16(ntc->issuer_lid),
+				cl_ntoh64(gid->unicast.interface_id),
+				cl_ntoh16(ntc->data_details.ntc_257_258.lid1),
+				cl_ntoh16(ntc->data_details.ntc_257_258.lid2),
+				cl_ntoh16(ntc->g_or_v.generic.trap_num) == SM_BAD_QKEY_TRAP ?
+					"Q_Key" : "P_Key",
+				cl_ntoh32(ntc->data_details.ntc_257_258.key),
+				cl_ntoh32(ntc->data_details.ntc_257_258.qp1) >> 28,
+				cl_ntoh32(ntc->data_details.ntc_257_258.qp1) & 0xffffff,
+				cl_ntoh32(ntc->data_details.ntc_257_258.qp2) & 0xffffff,
+				inet_ntop(AF_INET6, gid1->raw, gid_str, sizeof gid_str),
+				inet_ntop(AF_INET6, gid2->raw, gid_str2, sizeof gid_str2));
+			break;
+		case SM_BAD_SWITCH_PKEY_TRAP:
+			gid1 = &ntc->data_details.ntc_259.gid1;
+			gid2 = &ntc->data_details.ntc_259.gid2;
+			OSM_LOG(log, level,
+				"Reporting Security Notice \"%s\" from switch LID %u, "
+				"GUID 0x%016" PRIx64 " port %d : data_valid 0x%04x, "
+				"LID1 %u, LID2 %u, PKey 0x%04x, "
+				"SL %d, QP1 0x%x, QP2 0x%x, GID1 %s, GID2 %s\n",
+				ib_get_trap_str(ntc->g_or_v.generic.trap_num),
+				cl_ntoh16(ntc->issuer_lid),
+				cl_ntoh64(gid->unicast.interface_id),
+				ntc->data_details.ntc_259.port_no,
+				cl_ntoh16(ntc->data_details.ntc_259.data_valid),
+				cl_ntoh16(ntc->data_details.ntc_259.lid1),
+				cl_ntoh16(ntc->data_details.ntc_259.lid2),
+				cl_ntoh16(ntc->data_details.ntc_257_258.key),
+				cl_ntoh32(ntc->data_details.ntc_259.sl_qp1) >> 28,
+				cl_ntoh32(ntc->data_details.ntc_259.sl_qp1) & 0xffffff,
+				cl_ntoh32(ntc->data_details.ntc_259.qp2),
+				inet_ntop(AF_INET6, gid1->raw, gid_str, sizeof gid_str),
+				inet_ntop(AF_INET6, gid2->raw, gid_str2, sizeof gid_str2));
+			break;
+		default:
+			OSM_LOG(log, level,
+				"Reporting Generic Notice type:%u num:%u (%s)"
+				" from LID:%u GID:%s\n",
+				ib_notice_get_type(ntc),
+				cl_ntoh16(ntc->g_or_v.generic.trap_num),
+				ib_get_trap_str(ntc->g_or_v.generic.trap_num),
+				cl_ntoh16(ntc->issuer_lid),
+				inet_ntop(AF_INET6, gid->raw, gid_str, sizeof gid_str));
+			break;
+		}
 	} else
 		OSM_LOG(log, level,
 			"Reporting Vendor Notice type:%u vend:%u dev:%u"