[ofw] [Patch] [Tools][infiniband-diags]

Sasha Khapyorsky sashak at voltaire.com
Wed Aug 25 10:20:34 PDT 2010


On 20:19 Sun 01 Aug     , Sasha Khapyorsky wrote:
> On 14:36 Wed 28 Jul     , Irena Kruchkovsky wrote:
> > A patch that fixes the GUID output in ibstat to work correctly in windows 2003.
> > 
> > Index: D:/Windows/MLNX_VPI/tools/infiniband-diags/src/ibstat.c
> > ===================================================================
> > --- D:/Windows/MLNX_VPI/tools/infiniband-diags/src/ibstat.c  (revision 6199)
> > +++ D:/Windows/MLNX_VPI/tools/infiniband-diags/src/ibstat.c               (revision 6200)
> > @@ -72,9 +72,9 @@
> >                 printf("\tNumber of ports: %d\n", ca->numports);
> >                 printf("\tFirmware version: %s\n", ca->fw_ver);
> >                 printf("\tHardware version: %s\n", ca->hw_ver);
> > -              printf("\tNode GUID: 0x%016llx\n",
> > +             printf("\tNode GUID: 0x%016I64x\n",
> 
> Normally we are using PRI* macros with management code. What about this:

I've commited this couple of days ago:

commit e4b73c2081a9afc346adf98d0f4d348005c920f6
Author: Sasha Khapyorsky <sashak at voltaire.com>
Date:   Sun Aug 1 20:26:11 2010 +0300

    infiniband-diags/ibstat: convert to PRIx64 macros GUID printing
    
    Convert to using PRIx64 macros for printing GUID values.
    
    Pointed out by Irena Kruchkovsky.
    
    Signed-off-by: Sasha Khapyorsky <sashak at voltaire.com>

diff --git a/infiniband-diags/src/ibstat.c b/infiniband-diags/src/ibstat.c
index c44d8c4..f655a13 100644
--- a/infiniband-diags/src/ibstat.c
+++ b/infiniband-diags/src/ibstat.c
@@ -72,10 +72,9 @@ static void ca_dump(umad_ca_t * ca)
 	printf("\tNumber of ports: %d\n", ca->numports);
 	printf("\tFirmware version: %s\n", ca->fw_ver);
 	printf("\tHardware version: %s\n", ca->hw_ver);
-	printf("\tNode GUID: 0x%016llx\n",
-	       (long long unsigned)ntohll(ca->node_guid));
-	printf("\tSystem image GUID: 0x%016llx\n",
-	       (long long unsigned)ntohll(ca->system_guid));
+	printf("\tNode GUID: 0x%016" PRIx64 "\n", ntohll(ca->node_guid));
+	printf("\tSystem image GUID: 0x%016" PRIx64 "\n",
+	       ntohll(ca->system_guid));
 }
 
 static char *port_state_str[] = {
@@ -122,8 +121,7 @@ static int port_dump(umad_port_t * port, int alone)
 	printf("%sLMC: %d\n", pre, port->lmc);
 	printf("%sSM lid: %d\n", pre, port->sm_lid);
 	printf("%sCapability mask: 0x%08x\n", pre, ntohl(port->capmask));
-	printf("%sPort GUID: 0x%016llx\n", pre,
-	       (long long unsigned)ntohll(port->port_guid));
+	printf("%sPort GUID: 0x%016" PRIx64 "\n", pre, ntohll(port->port_guid));
 	printf("%sLink layer: %s\n", pre, port->link_layer);
 	return 0;
 }
@@ -182,8 +180,7 @@ static int ports_list(char names[][UMAD_CA_NAME_LEN], int n)
 
 	for (i = 0; i < found; i++)
 		if (guids[i])
-			printf("0x%016llx\n",
-			       (long long unsigned)ntohll(guids[i]));
+			printf("0x%016" PRIx64 "\n", ntohll(guids[i]));
 	return found;
 }


, hope this solves your issues too.

Sasha



More information about the ofw mailing list