From e91b36efe51b5cbbfe5eb61a653cde5985ae8285 Mon Sep 17 00:00:00 2001 From: Will Deacon Date: Tue, 4 Dec 2012 12:56:44 +0100 Subject: ARM: 7592/1: nommu: prevent generation of kernel unaligned memory accesses Recent ARMv7 toolchains assume that unaligned memory accesses will not fault and will instead be handled by the processor. For the nommu case (without an MPU), memory will be treated as strongly-ordered and therefore unaligned accesses may fault regardless of the SCTLR.A setting. This patch passes -mno-unaligned-access to GCC when compiling for nommu targets, preventing the generation of unaligned memory access in the kernel. Acked-by: Nicolas Pitre Tested-by: Jonathan Austin Signed-off-by: Will Deacon Signed-off-by: Russell King --- arch/arm/Makefile | 1 + 1 file changed, 1 insertion(+) (limited to 'arch/arm') diff --git a/arch/arm/Makefile b/arch/arm/Makefile index f023e3acdfbd..cbe364210c7d 100644 --- a/arch/arm/Makefile +++ b/arch/arm/Makefile @@ -34,6 +34,7 @@ KBUILD_DEFCONFIG := versatile_defconfig # defines filename extension depending memory management type. ifeq ($(CONFIG_MMU),) MMUEXT := -nommu +KBUILD_CFLAGS += $(call cc-option,-mno-unaligned-access) endif ifeq ($(CONFIG_FRAME_POINTER),y) -- cgit v1.2.3