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 1ce57b42f390fbae029996a55f767478a91ce6a0..fdb0133142ff534394a6da8d94a7a56426e3837d 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