[ofa-general] Re: problems using smpdump

Sasha Khapyorsky sashak at voltaire.com
Wed Jan 28 10:19:24 PST 2009


Hi Or,

On 16:44 Wed 28 Jan     , Or Gerlitz wrote:
> 
> I'm having some problems with smpdump when used with the Mellanox IS4
> switch, for example for nodeinfo (0x11), both smpquery and smpdump when
> run against HCA in this form
> 
> 	$ smpquery nodeinfo LID
> 	$ smpdump LID 0x11
> 
> produce the --same-- response mad, but when run against IS4 smpdump doesn't
> return anything. Invoking both with -ddd I noticed these two lines:
> 
> ibwarn: [30549] umad_set_addr: umad 0xae0c010 dlid 12 dqp 0 sl 65535, qkey 0
> ibwarn: [30549] umad_addr_dump: qpn 0 qkey 0x0 lid 0xc sl 255
> 
> so the SLs used by smpdump are wierd (255 and 65535), is it just
> print-errors or can suggest a possible explanation for the failure?

It is a bug in smpdump (not just print error), it tries to set sl
explicitly to 0xffff when using LID routed MADs (so I suppose direct
routed MAD will work:

  smpdump -D 0,2 0x11

). And seems this bug was from day "0" of smpdump.

Guess that this should be a patch:


diff --git a/infiniband-diags/src/smpdump.c b/infiniband-diags/src/smpdump.c
index f195690..8618121 100644
--- a/infiniband-diags/src/smpdump.c
+++ b/infiniband-diags/src/smpdump.c
@@ -121,7 +121,7 @@ smp_get_init(void *umad, int lid, int attr, int mod)
 	smp->attr_mod	   = htonl(mod);
 	smp->tid           = htonll(drmad_tid++);
 
-	umad_set_addr(umad, lid, 0, 0xffff, 0);
+	umad_set_addr(umad, lid, 0, 0, 0);
 }
 
 void


Sasha



More information about the general mailing list