On Tue, Mar 27, 2018 at 09:36:11AM +1100, Benjamin Herrenschmidt wrote: > On Mon, 2018-03-26 at 16:27 -0600, Jason Gunthorpe wrote: > > > Otherwise almost all drivers out there are broken which I very much > > > doubt :-) > > > > But.. Sinan is right, you look anywhere in the driver tree and you > > find stuff like this: > > > > drivers/net/ethernet/intel/i40e/i40e_txrx.c > > > > /* Force memory writes to complete before letting h/w > > * know there are new descriptors to fetch. > > */ > > wmb(); > > > > > > It is *systemic* > > Yes, because they all copied e1000e :-) If you look at the comment in > there, it does say it's only for weakly ordered archs such as ia64, and > even then, probably predates Linus strong statement on the matter. Hahah, sure I'll buy that.. But still, if this really is the case, a *strong* statement in barriers.txt to that effect (and not an example demanding the wmb()!) would be very helpful for those of us that have to review driver code! 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