svn commit: r208332 - in head/sys: amd64/include i386/include

Greg Lewis glewis at eyesbeyond.com
Tue May 25 03:59:48 UTC 2010


On Sun, May 23, 2010 at 11:15:09PM +1000, Bruce Evans wrote:
> On Sun, 23 May 2010, Poul-Henning Kamp wrote:
> > In message <20100523183502.C13588 at delplex.bde.org>, Bruce Evans writes:
> >> On Thu, 20 May 2010, Poul-Henning Kamp wrote:
> >
> >> <machine/atomic.h> should be kernel-only.
> >
> > No, it absolutely should not, if anything, it should be pushed as
> > international standards (with <sys/endian.h>, and <sys/queue.h>).
> >
> > Atomic operations and write barriers are necessary when multiple
> > threads or processes cooperate using shared memory. and if anything
> > the bug is that POSIX has not updated pthreads to have these and
> > other necessary primitives.  (pthread_mutex_assert_held() for instance).
> 
> Pehraps, but <machine/atomic.h> was only designed, implemented and
> documented for use in the kernel.  And of course any standardized version
> won't look like the FreeBSD kernel one.  The kernel one is too bloated
> for me, but a general-purpose one should be even more bloated so as
> to support all types and more than atomic ops.

The FreeBSD port of the "Zero" Java VM uses <machine/atomic.h>.  Well,
except on sparc64 where <machine/atomic.h> pulls in too much namespace
pollution and it instead includes chunks of the header verbatim instead :(.

-- 
Greg Lewis                          Email   : glewis at eyesbeyond.com
Eyes Beyond                         Web     : http://www.eyesbeyond.com
Information Technology              FreeBSD : glewis at FreeBSD.org


More information about the svn-src-all mailing list