Replacing the code with uintptr_t indeed seems to make better progress. I'll check this on all compilers and send a patch if this works.
Thanks Tzachi > -----Original Message----- > From: [email protected] [mailto:ofw- > [email protected]] On Behalf Of Hefty, Sean > Sent: Thursday, September 02, 2010 7:03 PM > To: Hal Rosenstock; Tzachi Dar > Cc: [email protected] > Subject: Re: [ofw] Problem in building opensm with the 6001 compiler > > > A pointer to the actual context of the request (a copy of the > oriignal > > request structure) is attached as the p_madw- > > >context.ni_context.node_guid > > Also see this comment: > > /* > Provide MAD context such that the call back will know what to > do. > We have to keep the entire request structure so we know the > CB. > Since we can not rely on the client to keep it around until > the response - we duplicate it and will later dispose it (in > CB). > To store on the MADW we cast it into what opensm has: > p_madw->context.ni_context.node_guid > */ > p_query_req_copy = malloc(sizeof(*p_query_req_copy)); > if (!p_query_req_copy) { > OSM_LOG(p_log, OSM_LOG_ERROR, "ERR 5511: " > "Unable to acquire memory for query copy\n"); > osm_mad_pool_put(p_bind->p_mad_pool, p_madw); > status = IB_INSUFFICIENT_RESOURCES; > goto Exit; > } > *p_query_req_copy = *p_query_req; > p_madw->context.ni_context.node_guid = > (ib_net64_t) (long)p_query_req_copy; > > The (long) cast should probably be (uintptr_t) when saving and > restoring the pointer. > _______________________________________________ > ofw mailing list > [email protected] > http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ofw _______________________________________________ ofw mailing list [email protected] http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ofw
