Re: [RFC PATCH] introduce sys_membarrier(): process-wide memory barrier (v5)

David Daney
2010-01-13T19:42:16Z

Mathieu Desnoyers wrote:
> * Nicholas Miell (nmiell@comcast.net) wrote:
>> On Wed, 2010-01-13 at 13:24 -0500, Mathieu Desnoyers wrote:
>>> * Nicholas Miell (nmiell@comcast.net) wrote:
>>>
>>>> The whole point of compat and incompat flags is that it allows new
>>>> applications to run on old kernels and either work or fail as
>>>> appropriate, depending on whether the new features they're using must be
>>>> implemented or can be silently ignored.
>>> I see. Thanks for the explanation. Then the expedited flag should
>>> clearly be part of the mandatory flags.
>>>
>>> Can you point me to other system calls that are doing this ?
>>>
>>> Thanks,
>>>
>>> Mathieu
>> Not off the top of my head, but I did steal the idea from the ext2/3/4
>> disk format.
>
> Sounds a bit over-engineered to me for system calls, but who knows if we
> eventually have to extend sys_membarrier(). This involves that, right
> now, I'd have to add a header to include/linux to define these flags.
> Also, "int expedited" is a bit clearer, but less flexible, than "int
> flags". Anyone else have comments about this ?
>

It doesn't bother me that you have to do extra work to add the flag
definitions to a header file. :-)

As I understand it, the proposal is to have the option to extend the ABI
based on as yet undefined flag bits. This doesn't seem like a bad thing.

The runtime overhead of testing a single bit vs. non-zero in the
parameter shouldn't be an issue.

David Daney