Synchronizing auxiliary mutex data

Torvald Riegel triegel@redhat.com
Tue Jun 20 10:00:00 GMT 2017


On Tue, 2017-06-20 at 10:21 +0200, Andreas Schwab wrote:
> On Jun 19 2017, Torvald Riegel <triegel@redhat.com> wrote:
> 
> > * We write to __owner only when in the critical section, with relaxed
> > MO; we write TID after lock and 0 before unlock.  Those writes are
> > ordered by the critical section.
> 
> How does it guarantee that the thread calling pthread_mutex_lock see the
> change that the thread calling pthread_mutex_unlock did?

I suppose you are referring to the writes?  If so, because of the
unlock/lock synchronization.

> > __count is only accessed within the critical section IIRC.
> 
> Same here.

That's not quite the same, because unless I misremember, __count is
protected by the lock: all accesses are within the critical section.




More information about the Libc-alpha mailing list