On Sat, Feb 02, 2008 at 09:56:42PM +0200, Alexander Motin wrote: >Peter Jeremy ?????: >> On Sat, Feb 02, 2008 at 11:31:31AM +0200, Alexander Motin wrote: >>> To check UMA dependency I have made a trivial one-element cache which in >>> my test case allows to avoid two for four allocations per packet. >> >> You should be able to implement this lockless using atomic(9). I haven't >> verified it, but the following should work. > >I have tried this, but man 9 atomic talks: > >The atomic_readandclear() functions are not implemented for the types >``char'', ``short'', ``ptr'', ``8'', and ``16'' and do not have any >variants with memory barriers at this time.
Hmmm. This seems to be more a documentation bug than missing code: atomic_readandclear_ptr() seems to be implemented on most architectures (the only one where I can't find it is arm) and is already used in malloc(3). -- Peter Jeremy Please excuse any delays as the result of my ISP's inability to implement an MTA that is either RFC2821-compliant or matches their claimed behaviour.
pgpaCXVw6o4l6.pgp
Description: PGP signature