Whilst writing some test code, I came across this issue again.

   '[openib-general] Conflicting typedefs for "ib_gid_t"'
   http://lists.openfabrics.org/pipermail/general/2006-August/024903.html

One fix which suggested was to change the ib_gid_t to mad_gid_t.

   http://lists.openfabrics.org/pipermail/general/2006-August/024928.html

I think that is a pretty good choice.  I know there are many ways to fix this
but this seems to be the least invasive.  (I was actually surprised by how
little the code needed to change.)  Of course I don't know if other software
relies on the libibmad interface; so if your package uses mad.h, please
comment.  And finally I have just be running this afternoon with the fix.  So
there has been limited testing.

Thanks,
Ira


>From df270f4b955c16f25c65a89be074c78fd2f3521d Mon Sep 17 00:00:00 2001
From: Ira K. Weiny <[EMAIL PROTECTED]>
Date: Wed, 5 Mar 2008 17:25:33 -0800
Subject: [PATCH] Rename ib_gid_t in mad.h to mad_gid_t to prevent name 
collision with ib_types.h


Signed-off-by: Ira K. Weiny <[EMAIL PROTECTED]>
---
 infiniband-diags/src/ibaddr.c     |    2 +-
 libibmad/include/infiniband/mad.h |    8 ++++----
 libibmad/src/resolve.c            |    2 +-
 libibmad/src/sa.c                 |    2 +-
 4 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/infiniband-diags/src/ibaddr.c b/infiniband-diags/src/ibaddr.c
index f71edf8..2ac6a4f 100644
--- a/infiniband-diags/src/ibaddr.c
+++ b/infiniband-diags/src/ibaddr.c
@@ -56,7 +56,7 @@ ib_resolve_addr(ib_portid_t *portid, int portnum, int 
show_lid, int show_gid)
        uint8_t nodeinfo[64];
        uint64_t guid, prefix;
        char buf1[64], buf2[64];
-       ib_gid_t gid;
+       mad_gid_t gid;
        int lmc;
 
        if (!smp_query(nodeinfo, portid, IB_ATTR_NODE_INFO, 0, 0))
diff --git a/libibmad/include/infiniband/mad.h 
b/libibmad/include/infiniband/mad.h
index 15b8246..adce3e8 100644
--- a/libibmad/include/infiniband/mad.h
+++ b/libibmad/include/infiniband/mad.h
@@ -156,7 +156,7 @@ enum GSI_ATTR_ID {
 #define IB_VENDOR_OPENIB_SYSSTAT_CLASS (IB_VENDOR_RANGE2_START_CLASS + 3)
 #define IB_OPENIB_OUI                  (0x001405)
 
-typedef uint8_t ib_gid_t[16];
+typedef uint8_t mad_gid_t[16];
 
 typedef struct {
        int cnt;
@@ -189,7 +189,7 @@ typedef struct portid {
        int lid;                /* lid or 0 if directed route */
        ib_dr_path_t drpath;
        int grh_present;        /* flag */
-       ib_gid_t gid;
+       mad_gid_t gid;
        uint32_t qp;
        uint32_t qkey;
        uint8_t sl;
@@ -777,7 +777,7 @@ uint8_t * sa_call(void *rcvbuf, ib_portid_t *portid, 
ib_sa_call_t *sa,
                  unsigned timeout);
 uint8_t * sa_rpc_call(void *ibmad_port, void *rcvbuf, ib_portid_t *portid,
                      ib_sa_call_t *sa, unsigned timeout);
-int    ib_path_query(ib_gid_t srcgid, ib_gid_t destgid, ib_portid_t *sm_id,
+int    ib_path_query(mad_gid_t srcgid, mad_gid_t destgid, ib_portid_t *sm_id,
                      void *buf);       /* returns lid */
 
 inline static uint8_t *
@@ -799,7 +799,7 @@ int ib_resolve_guid(ib_portid_t *portid, uint64_t *guid,
                        ib_portid_t *sm_id, int timeout);
 int    ib_resolve_portid_str(ib_portid_t *portid, char *addr_str,
                              int dest_type, ib_portid_t *sm_id);
-int    ib_resolve_self(ib_portid_t *portid, int *portnum, ib_gid_t *gid);
+int    ib_resolve_self(ib_portid_t *portid, int *portnum, mad_gid_t *gid);
 
 /* gs.c */
 uint8_t *perf_classportinfo_query(void *rcvbuf, ib_portid_t *dest, int port,
diff --git a/libibmad/src/resolve.c b/libibmad/src/resolve.c
index d8365b2..7d8eb6e 100644
--- a/libibmad/src/resolve.c
+++ b/libibmad/src/resolve.c
@@ -138,7 +138,7 @@ ib_resolve_portid_str(ib_portid_t *portid, char *addr_str, 
int dest_type, ib_por
 }
 
 int
-ib_resolve_self(ib_portid_t *portid, int *portnum, ib_gid_t *gid)
+ib_resolve_self(ib_portid_t *portid, int *portnum, mad_gid_t *gid)
 {
        ib_portid_t self = {0};
        uint8_t portinfo[64];
diff --git a/libibmad/src/sa.c b/libibmad/src/sa.c
index ddbfce3..fde10bd 100644
--- a/libibmad/src/sa.c
+++ b/libibmad/src/sa.c
@@ -112,7 +112,7 @@ sa_rpc_call(void *ibmad_port, void *rcvbuf, ib_portid_t 
*portid,
                        IB_PR_COMPMASK_NUMBPATH)
 
 int
-ib_path_query(ib_gid_t srcgid, ib_gid_t destgid, ib_portid_t *sm_id, void *buf)
+ib_path_query(mad_gid_t srcgid, mad_gid_t destgid, ib_portid_t *sm_id, void 
*buf)
 {
        int npath;
        ib_sa_call_t sa = {0};
-- 
1.5.1
_______________________________________________
general mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to