On Tue, Apr 06, 2021 at 04:54:57PM +0200, Christoph Hellwig wrote: > On Tue, Apr 06, 2021 at 11:40:39AM -0300, Jason Gunthorpe wrote: > > Yes, but the complexity is how the drivers are constructed they are > > designed to reject flags they don't know about.. > > > > Hum, it looks like someone has already been in here and we now have a > > IB_ACCESS_OPTIONAL concept. > > > > Something like this would be the starting point: > > > > [...] > > > > However I see only EFA actually uses IB_ACCESS_OPTIONAL, so the lead > > up would be to audit all the drivers to process optional access_flags > > properly. Maybe this was done, but I don't see much evidence of it.. > > > > Sigh. It is a big mess cleaning adventure in drivers really. > > Yes. When passing flags to drivers we need to have a good pattern > in place for distinguishing between mandatory and optional flags. > That is something everyone gets wrong at first (yourself included) > and which then later needs painful untangling. So I think we need > to do that anyway. It looks like we did actually do this right here, when the RELAXED_ORDERING was originally added it was done as an optional flag and a range of bits were set aside in the uAPI for future optional flags. This should be quite easy to do then Jason