xtensa: add -mno-serialize-volatile to CFLAGS
authorMax Filippov <jcmvbkbc@gmail.com>
Fri, 28 Apr 2017 16:40:00 +0000 (09:40 -0700)
committerMax Filippov <jcmvbkbc@gmail.com>
Sun, 10 Dec 2017 07:55:56 +0000 (23:55 -0800)
By default xtensa gcc inserts memw for all volatile object accesses.
This is too pessimistic for the kernel: there should be no "normal"
volatile objects, and all special objects, like MMIO or objects shared
between CPUs should have explicit barriers.

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
arch/xtensa/Makefile

index 7ee02fe..a206598 100644 (file)
@@ -46,6 +46,7 @@ KBUILD_CFLAGS += -ffreestanding -D__linux__
 KBUILD_CFLAGS += -pipe -mlongcalls
 
 KBUILD_CFLAGS += $(call cc-option,-mforce-no-pic,)
+KBUILD_CFLAGS += $(call cc-option,-mno-serialize-volatile,)
 
 ifneq ($(CONFIG_LD_NO_RELAX),)
 LDFLAGS := --no-relax