Messages in this thread | | | From | Arnd Bergmann <> | Subject | Re: [RFC PATCH 01/15] cmpxchg_local() is not signed-value safe, so fix generic atomics | Date | Wed, 18 May 2016 17:29:49 +0200 |
| |
On Wednesday 18 May 2016 16:10:45 David Howells wrote: > cmpxchg_local() is not signed-value safe because on a 64-bit machine signed > int arguments to it may be sign-extended to signed long _before_ begin cast > to unsigned long. This potentially causes comparisons to fail when dealing > with negative values. > > Fix the generic atomic functions that are implemented in terms of cmpxchg() > to cast their arguments to unsigned int before calling cmpxchg(). > > Signed-off-by: David Howells <dhowells@redhat.com> >
Isn't the problem you describe something that cmpxchg() could prevent instead?
Arnd
| |