> 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. _______________________________________________ general mailing list [email protected] http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
