<HTML dir=ltr><HEAD><TITLE>Re: [ofa-general] RE: [ewg] OFED 1.2 and backwards binary compatibility</TITLE>
<META http-equiv=Content-Type content="text/html; charset=unicode">
<META content="MSHTML 6.00.6000.16448" name=GENERATOR></HEAD>
<BODY>
<DIV id=idOWAReplyText59970 dir=ltr>
<DIV dir=ltr><FONT face=Arial color=#000000 size=2>Roland,</FONT></DIV>
<DIV dir=ltr><FONT face=Arial size=2></FONT> </DIV>
<DIV dir=ltr><FONT face=Arial size=2>1.0 vs. 1.1 is all good. That works. I'm talking about 1.1/1.0 vs 1.2, that's not working. The diffset below is between 1.1 and 1.2.</FONT></DIV>
<DIV dir=ltr><FONT face=Arial size=2></FONT> </DIV>
<DIV dir=ltr><FONT face=Arial size=2>What we're doing is using dlopen()/dlsym() to dynamically open the library so that we have no library dependencies (this allows us to runtime wise check if ofed is installed or other IB stacks). This apparently breaks.</FONT></DIV>
<DIV dir=ltr><FONT face=Arial size=2></FONT> </DIV>
<DIV dir=ltr><FONT face=Arial size=2>I don't find any "post_send_wrapper_1_0" nor "post_send_wrapper_1_1" symbols in my libraries ?? :</FONT></DIV>
<DIV dir=ltr><FONT face=Arial size=2></FONT> </DIV>
<DIV dir=ltr><FONT face=Arial size=2>[root@pe1850-1 lib]# nm libibverbs.so.1.0.0 |grep post_send<BR>0000000000003aa0 T ibv_cmd_post_send<BR></FONT></DIV>
<DIV dir=ltr><FONT face=Arial size=2>?</DIV></FONT>
<DIV dir=ltr><FONT face=Arial size=2></FONT> </DIV>
<DIV dir=ltr><FONT face=Arial size=2>Cheers,</FONT></DIV>
<DIV dir=ltr><FONT face=Arial color=#000000 size=2></FONT> </DIV></DIV>
<DIV id=idSignature14445 dir=ltr><PRE>Steffen Persvold
Technical Director Americas
tel. 508-281-7100 x401
fax. 508-281-7171

http://www.scali.com/
Scaling the Linux datacenter
</PRE></DIV>
<DIV dir=ltr><BR>
<HR tabIndex=-1>
<FONT face=Tahoma size=2><B>From:</B> Roland Dreier [mailto:rdreier@cisco.com]<BR><B>Sent:</B> Thu 6/7/2007 9:42 PM<BR><B>To:</B> Steffen Persvold<BR><B>Cc:</B> EWG; OpenFabrics General<BR><B>Subject:</B> Re: [ofa-general] RE: [ewg] OFED 1.2 and backwards binary compatibility<BR></FONT><BR></DIV>
<DIV>
<P><FONT size=2> > Just to follow up, I believe at least these changes (there are more) to verbs.h breaks the compatibility :<BR> > <BR> > @@ -469,8 +502,8 @@<BR> >  };<BR> >  struct ibv_send_wr {<BR> > -       struct ibv_send_wr     *next;<BR> >         uint64_t                wr_id;<BR> > +       struct ibv_send_wr     *next;<BR> >         struct ibv_sge         *sg_list;<BR> >         int                     num_sge;<BR> >         enum ibv_wr_opcode      opcode;<BR> > @@ -496,12 +529,21 @@<BR> >  };<BR> >  struct ibv_recv_wr {<BR> > -       struct ibv_recv_wr     *next;<BR> >         uint64_t                wr_id;<BR> > +       struct ibv_recv_wr     *next;<BR> >         struct ibv_sge         *sg_list;<BR> >         int                     num_sge;<BR> >  };<BR><BR>These differences should be taken care of by the<BR>post_send_wrapper_1_0() and post_recv_wrapper_1_0() functions in<BR>src/compat-1_0.c in libibverbs 1.1.<BR><BR> - R.<BR></FONT></P></DIV></BODY></HTML>