Messages in this thread |  | | Date | Thu, 19 Sep 2013 13:11:32 -0500 | | Subject | Re: [PATCH] lockref: use cmpxchg64 explicitly for lockless updates | | From | Linus Torvalds <> |
| |
On Thu, Sep 19, 2013 at 1:06 PM, Will Deacon <will.deacon@arm.com> wrote: > The cmpxchg() function tends not to support 64-bit arguments on 32-bit > architectures. This could be either due to use of unsigned long arguments > (like on ARM) or lack of instruction support (cmpxchgq on x86). However, > these architectures may implement a specific cmpxchg64() function to > provide 64-bit cmpxchg support instead
I'm certainly ok with this, but I wonder how much point there is to use the cmpxchg alternatives for 32-bit architectures at all...
From a performance standpoint, lockref really is expected to mainly help with big machines. Only insane people would do big machines with 32-bit kernels these days.
Of course, it may be that cmpxchg is actually faster on some architectures, but at least on x86-32, cmpxchg8b is traditionally quite slow.
In other words, I'd actually like to see some numbers if there are loads where this actually helps and matters...
Linus
|  |