]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
ARM: 7866/1: include: asm: use 'long long' instead of 'u64' within atomic.h
authorChen Gang <gang.chen@asianux.com>
Sat, 26 Oct 2013 14:07:04 +0000 (15:07 +0100)
committerJiri Slaby <jslaby@suse.cz>
Thu, 9 Apr 2015 12:13:40 +0000 (14:13 +0200)
commit63448427542cdfbfcb1c84e1cfbbcef137bd4173
tree6f204c36f87bf8cd93fc5b561d3fa3f2f7daac8b
parent4fd4c6b42691a657dd28b02cc7b66f01e87cb492
ARM: 7866/1: include: asm: use 'long long' instead of 'u64' within atomic.h

commit 237f12337cfa2175474e4dd015bc07a25eb9080d upstream.

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.

Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Chen Gang <gang.chen@asianux.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
arch/arm/include/asm/atomic.h