arm64: pass machine size to sparse
authorLuc Van Oostenryck <luc.vanoostenryck@gmail.com>
Tue, 20 Jun 2017 12:24:43 +0000 (14:24 +0200)
committerWill Deacon <will.deacon@arm.com>
Tue, 20 Jun 2017 15:47:16 +0000 (16:47 +0100)
When using sparse on the arm64 tree we get many thousands of
warnings like 'constant ... is so big it is unsigned long long'
or 'shift too big (32) for type unsigned long'. This happens
because by default sparse considers the machine as 32bit and
defines the size of the types accordingly.

Fix this by passing the '-m64' flag to sparse so that
sparse can correctly define longs as being 64bit.

CC: Catalin Marinas <catalin.marinas@arm.com>
CC: Will Deacon <will.deacon@arm.com>
CC: linux-arm-kernel@lists.infradead.org
Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
arch/arm64/Makefile

index 1ce57b4..fdb0133 100644 (file)
@@ -62,7 +62,7 @@ LD            += -EL
 UTS_MACHINE    := aarch64
 endif
 
-CHECKFLAGS     += -D__aarch64__
+CHECKFLAGS     += -D__aarch64__ -m64
 
 ifeq ($(CONFIG_ARM64_MODULE_CMODEL_LARGE), y)
 KBUILD_CFLAGS_MODULE   += -mcmodel=large