Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 6 Oct 2000 14:27:37 +1100 (EST)
From:      Bruce Evans <bde@zeta.org.au>
To:        John Baldwin <jhb@FreeBSD.org>
Cc:        Mike Smith <msmith@FreeBSD.org>, cvs-all@FreeBSD.org, cvs-committers@FreeBSD.org
Subject:   Re: cvs commit: src/sys/alpha/include atomic.h src/sys/i386/incl
Message-ID:  <Pine.BSF.4.21.0010061413500.1789-100000@besplex.bde.org>
In-Reply-To: <XFMail.001005163400.jhb@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 5 Oct 2000, John Baldwin wrote:

> On 05-Oct-00 Mike Smith wrote:
> >> jhb         2000/10/05 15:19:50 PDT
> >> 
> >>   Modified files:
> >>     sys/alpha/include    atomic.h 
> >>     sys/i386/include     atomic.h 
> >>   Log:
> >>   Add atomic_readandclear_int and atomic_readandclear_long.
> > 
> > Um, isn't this just exchange-with-zero?
> 
> That's one way of implementing it, yes.  That is not the method used by the
> alpha, however.  I chose the name due to prior existence.  The alpha
> already had an atomic_readandclear_int, albeit buried in the ipl code.
> The x86 had a similar loadandclear() in cpufunc.h

It should be named loadandclear().  "load" is more precise than "read".
The instruction to do the load is even named "ld" on alphas.  I will
remove the suffixes on the atomic functions soon.  It should go without
saying that operations like load and clear, test and set, and compare and
swap, etc., are atomic.

Bruce



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.21.0010061413500.1789-100000>