Lockless uidinfo.
Bruce Evans
brde at optusnet.com.au
Sun Aug 19 05:44:51 PDT 2007
On Sun, 19 Aug 2007, Jeff Roberson wrote:
> On Sun, 19 Aug 2007, Bruce Evans wrote:
>> atomic_*long() shouldn't exist (and doesn't exist in my version) since
>> longs should actually be long (twice as long as registers) and thus
>> especially epensive to lock.
>
> Well unfortunately this is not how the compiler implements them on the
> architectures that we support. So in this case long is 32bit on 32bit
> machines and 64bit on 64bit machines and as such requires each architecture
> to treat them specially. I don't think it's unreasonable to add an
> atomic_fetchadd_long() that conforms to the definition of long that is
> actually in use.
The compiler has nothing to do with this. The implementation is FreeBSD's
and it is poor, like I said.
[Context lost to top posting]
Bruce
More information about the freebsd-arch
mailing list