[ofa-general] Re: [PATCH 24/28] IB/ipath - ipath_poll fixups and enhancements

Roland Dreier rdreier at cisco.com
Fri Jun 29 17:13:37 PDT 2007


 > Most of the places where the receive header tail is checked is
 > for queue full/non-full so the read barriers aren't needed.
 > The one place where we might need a rmb() is in ipath_kreceive()
 > where we check the tail and then read the queue entry.

Yes, you almost certainly need a barrier there.  You might not hit it
in practice but I don't see any reason why a CPU couldn't end up
reading, say, an invalid qp value because the entry hadn't been
written yet, but then see a value for the tail pointer that was
written later.

 - R.



More information about the general mailing list