On 31-Jan-01 Matthew Emmerton wrote:
> Hi all,
> 
> I've taken a look around for an implementation of atomic bit operations in
> FreeBSD (similar to Linux' asm/bitopt.h, which include clear_bit() and
> test_and_set_bit()) but haven't found any.  The only thing I've found are
> the atomic clear/set/add/sub routines in machine/atomic.h.
> 
> Do we have an implementation of atomic bit operations, and if we don't,
> would we like some?

Erm, atomic_set() sets's bits, and atomic_clear() clear's bits.  Anything else
you might need can be done with atomic_cmpset() anyways.  Also, atomic
operations are very hard to debug, esp. to check for race conditions, so there
direct use is discouraged.  Instead, use a higher level primitive such as a
mutex or other appropriate lock.  There is also talk of a potential abstract
refcount type so that simple reference counts can be optimized, though that has
been shot down thus far.

> --
> Matt Emmerton

-- 

John Baldwin <[EMAIL PROTECTED]> -- http://www.FreeBSD.org/~jhb/
PGP Key: http://www.baldwin.cx/~john/pgpkey.asc
"Power Users Use the Power to Serve!"  -  http://www.FreeBSD.org/


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message

Reply via email to