[PATCH v2] ARM: include: asm: use 'long long' instead of 'u64' within atomic.h
From: Will Deacon <hidden>
Date: 2013-09-25 16:07:47
From: Will Deacon <hidden>
Date: 2013-09-25 16:07:47
On Wed, Sep 25, 2013 at 03:25:19AM +0100, Chen Gang wrote:
atomic* value is signed value, and atomic* functions need also process signed value (parameter value, and return value), so 32-bit arm need use 'long long' instead of 'u64'. After replacement, it will also fix a bug for atomic64_add_negative(): "u64 is never less than 0". The modifications are: in vim, use "1,% s/\<u64\>/long long/g" command. remove '__aligned(8)' which is useless for 64-bit. be sure of 80 column limitation after replacement. Signed-off-by: Chen Gang <redacted>
Looks better to me, thanks. While you're here, we could also replace the use of `unsigned long' with `int' for the 32-bit atomics, then the whole header is consistent with the generic types. Will