> On Feb 11, 2022, at 7:07 AM, Taylor R Campbell <riastr...@netbsd.org> wrote:
> 
>> Date: Fri, 11 Feb 2022 06:52:48 -0800
>> From: Jason Thorpe <thor...@me.com>
>> 
>> I would prefer we adopt the Solaris description about a generic
>> barrier that provides "lock-is-visible-before-load/store" without
>> explicitly stating "load-before-load/store", and provide a new
>> membar_acquire() that means "load-before-load/store".
> 
> What does `lock-is-visible' mean?  How would you ever use it
> correctly, or audit correct use?  What operations do we have that have
> `lock-is-visible' semantics, which don't also imply an acquire
> operation and thus don't need an explicit barrier anyway?

Actually, you know what, I’m just going to defer on all of this.  I have a huge 
beef with the modern naming of various memory barrier operations (they are not 
intuitive at all, IMO) … so whatever.

> It turns out that _even on x86_, our membar_enter fails to implement
> the semantics we documented for it

Sure, change the documentation rather than fix the bug, then.

-- thorpej

Reply via email to