aboutsummaryrefslogtreecommitdiffstats
path: root/arch/mips/vdso
diff options
context:
space:
mode:
authorPaul Burton <paul.burton@mips.com>2017-12-12 09:57:47 +0000
committerPaul Burton <paul.burton@mips.com>2018-07-27 19:36:16 -0700
commit351fdddd366245c0fb4636f32edfb4198c8d6b8c (patch)
treef38034c7a4bdb213123e550302e04e3e3f4c2324 /arch/mips/vdso
parentMIPS: ath79: Use the IRQ based GPIO key driver for the buttons (diff)
downloadlinux-dev-351fdddd366245c0fb4636f32edfb4198c8d6b8c.tar.xz
linux-dev-351fdddd366245c0fb4636f32edfb4198c8d6b8c.zip
MIPS: VDSO: Prevent use of smp_processor_id()
VDSO code should not be using smp_processor_id(), since it is executed in user mode. Introduce a VDSO-specific path which will cause a compile-time or link-time error (depending upon support for __compiletime_error) if the VDSO ever incorrectly attempts to use smp_processor_id(). [Matt Redfearn <matt.redfearn@imgtec.com>: Move before change to smp_processor_id in series] Signed-off-by: Paul Burton <paul.burton@mips.com> Signed-off-by: Matt Redfearn <matt.redfearn@mips.com> Patchwork: https://patchwork.linux-mips.org/patch/17932/ Cc: Ralf Baechle <ralf@linux-mips.org> Cc: James Hogan <jhogan@kernel.org> Cc: linux-mips@linux-mips.org
Diffstat (limited to 'arch/mips/vdso')
-rw-r--r--arch/mips/vdso/Makefile3
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/mips/vdso/Makefile b/arch/mips/vdso/Makefile
index ce196046ac3e..477c463c89ec 100644
--- a/arch/mips/vdso/Makefile
+++ b/arch/mips/vdso/Makefile
@@ -7,7 +7,8 @@ ccflags-vdso := \
$(filter -I%,$(KBUILD_CFLAGS)) \
$(filter -E%,$(KBUILD_CFLAGS)) \
$(filter -mmicromips,$(KBUILD_CFLAGS)) \
- $(filter -march=%,$(KBUILD_CFLAGS))
+ $(filter -march=%,$(KBUILD_CFLAGS)) \
+ -D__VDSO__
cflags-vdso := $(ccflags-vdso) \
$(filter -W%,$(filter-out -Wa$(comma)%,$(KBUILD_CFLAGS))) \
-O2 -g -fPIC -fno-strict-aliasing -fno-common -fno-builtin -G 0 \