Re: [PATCH libibverbs 1/3] Add new call ibv_cmd_create_ah_ex which supports extra parameters

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 2016-09-01 at 12:05 -0600, Jason Gunthorpe wrote:
> On Thu, Sep 01, 2016 at 07:22:38PM +0200, Knut Omang wrote:
> > On Thu, 2016-09-01 at 10:49 -0600, Jason Gunthorpe wrote:
> > > On Thu, Sep 01, 2016 at 08:59:51AM +0200, Knut Omang wrote:
> > > > +++ b/src/libibverbs.map
> > > > @@ -64,6 +64,7 @@ IBVERBS_1.0 {
> > > >  		ibv_cmd_post_recv;
> > > >  		ibv_cmd_post_srq_recv;
> > > >  		ibv_cmd_create_ah;
> > > > +		ibv_cmd_create_ah_ex;
> > > 
> > > I should also point out that this is not the proper way to use symbol
> > > versions. Typically one would tag new symbols with the version number
> > > of the release that introduces them, and not just keep re-using 1.0
> > > 
> > > I know we haven't been doing that, but perhaps we should start.
> > 
> > Yes, I noticed the never changed 1.0 and tried just to follow the usage 
> > pattern ;-)
> 
> Actually, thinking about this more, not doing this properly breaks RPM
> since it only summarizes the tag not the actual symbol into the
> package data.
> 
> So, no this is not OK, and maybe we need to retroactively review
> things :( :(

For this patch backward binary compatibility is actually preserved - a vendor library 
continues to work even without recompiling. I deliberately avoided making
the ibv_cmd_create_ah function inline to ensure that. Loading libsif would of course
break, but with a symbol error.

But versioning is still an issue to consider with patch 2 in this set, as it 
unfortunately has to change the layout of the data structures between 
kernel and user space to fix the alignment bug.

Patch 3 has the same alignment issue, but is not used by anyone but our
new vendor library.

Knut

> Jason
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux