This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] [BZ#2505] PPC32 should use lwsync where possible


Segher Boessenkool <segher@kernel.crashing.org> wrote on 04/03/2006
06:24:10 PM:

> Hi Steven,
>
> I would love to review this, but I'm afraid I have no idea
> what any of these macros are supposed to do.  Could you please
> explain, preferably in code comments, or just point me to the
> documentation (that I searched for, but could not find)?  Thanks.
>
These are internal macros to the glibc's implementation of atomic ops and
low level lock primitives for NPTL. There is no documentation as such.
There may be some clues in Ulrich Drepper's white papers "Native Posix
Thread Library Design" <http://people.redhat.com/drepper/nptl-design.pdf>,
and "Futexes are Tricky" http://people.redhat.com/drepper/futex.pdf

These macros are used consistently across the arches because they are
written from Uli's example i386 implementation. They are used primarily
with the atomic operation macros defined within the same header. They
define memory read/write/full barriers for atomic ops and acquire/release
barriers for lock primatives.

Steven J. Munroe
Linux on Power Toolchain Architect
IBM Corporation, Linux Technology Center


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]