[openib-general] [libibcm] compilation of code that uses libibcm may fail

Hal Rosenstock halr at voltaire.com
Tue Aug 8 11:32:08 PDT 2006


On Tue, 2006-08-08 at 02:17, Dotan Barak wrote:
> On Monday 07 August 2006 21:02, Sean Hefty wrote:
> > Dotan Barak wrote:
> > > enum ib_cm_sidr_status { 0, 1, 2, 3, 4, IB_SIDR_UNSUPPORTED_VERSION };
> > > 
> > > it seems that the enumerations values were replaced with integers.
> > > 
> > > when i searched for the values that were enumerated in the headre files i
> > > found the following defines in ib_types.h:
> > > 
> > > #define IB_SIDR_SUCCESS                                         0 #define
> > > IB_SIDR_UNSUPPORTED                                     1 #define
> > > IB_SIDR_REJECT                                          2 #define
> > > IB_SIDR_NO_QP                                           3 #define
> > > IB_SIDR_REDIRECT                                        4
> > > 
> > > 
> > > I think that the problem was that ib_types.h was included in a file that
> > > includes the cm.h and the preprocessor replaced the enumeration names with
> > > the integer values.
> > > 
> > > who can check this issue?
> > 
> > I think the solution is to remove CM definitions out of ib_types.h.  What is the 
> > reason for including ib_types.h and cm.h?  ib_types looks like an internal 
> > opensm include file.
> 
> As much as i know, ib_types.h is the only header that have all of the MADs definitions,
> so i need to include it in several tests that sends MADs.
> 
> The solution may be that one of the files (cm.h or ib_types.h) will rename those names to 
> a different names.

That's another approach to the ones I mentioned in my previous response.

-- Hal

> thanks
> Dotan





More information about the general mailing list