arm64: Kconfig: Make CONFIG_COMPAT_VDSO a proper Kconfig option
CONFIG_COMPAT_VDSO is defined by passing '-DCONFIG_COMPAT_VDSO' to the compiler when the generic compat vDSO code is in use. It's much cleaner and simpler to expose this as a proper Kconfig option (like x86 does), so do that and remove the bodge. Acked-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Will Deacon <will@kernel.org>alistair/sunxi64-5.4-dsi
parent
eff9cb67be
commit
7c4791c9ef
|
@ -110,7 +110,6 @@ config ARM64
|
||||||
select GENERIC_STRNLEN_USER
|
select GENERIC_STRNLEN_USER
|
||||||
select GENERIC_TIME_VSYSCALL
|
select GENERIC_TIME_VSYSCALL
|
||||||
select GENERIC_GETTIMEOFDAY
|
select GENERIC_GETTIMEOFDAY
|
||||||
select GENERIC_COMPAT_VDSO if (!CPU_BIG_ENDIAN && COMPAT && "$(CROSS_COMPILE_COMPAT)" != "")
|
|
||||||
select HANDLE_DOMAIN_IRQ
|
select HANDLE_DOMAIN_IRQ
|
||||||
select HARDIRQS_SW_RESEND
|
select HARDIRQS_SW_RESEND
|
||||||
select HAVE_PCI
|
select HAVE_PCI
|
||||||
|
@ -1159,7 +1158,7 @@ menuconfig COMPAT
|
||||||
if COMPAT
|
if COMPAT
|
||||||
|
|
||||||
config KUSER_HELPERS
|
config KUSER_HELPERS
|
||||||
bool "Enable kuser helpers page for 32 bit applications"
|
bool "Enable kuser helpers page for 32-bit applications"
|
||||||
default y
|
default y
|
||||||
help
|
help
|
||||||
Warning: disabling this option may break 32-bit user programs.
|
Warning: disabling this option may break 32-bit user programs.
|
||||||
|
@ -1185,6 +1184,18 @@ config KUSER_HELPERS
|
||||||
Say N here only if you are absolutely certain that you do not
|
Say N here only if you are absolutely certain that you do not
|
||||||
need these helpers; otherwise, the safe option is to say Y.
|
need these helpers; otherwise, the safe option is to say Y.
|
||||||
|
|
||||||
|
config COMPAT_VDSO
|
||||||
|
bool "Enable vDSO for 32-bit applications"
|
||||||
|
depends on !CPU_BIG_ENDIAN && "$(CROSS_COMPILE_COMPAT)" != ""
|
||||||
|
select GENERIC_COMPAT_VDSO
|
||||||
|
default y
|
||||||
|
help
|
||||||
|
Place in the process address space of 32-bit applications an
|
||||||
|
ELF shared object providing fast implementations of gettimeofday
|
||||||
|
and clock_gettime.
|
||||||
|
|
||||||
|
You must have a 32-bit build of glibc 2.22 or later for programs
|
||||||
|
to seamlessly take advantage of this.
|
||||||
|
|
||||||
menuconfig ARMV8_DEPRECATED
|
menuconfig ARMV8_DEPRECATED
|
||||||
bool "Emulate deprecated/obsolete ARMv8 instructions"
|
bool "Emulate deprecated/obsolete ARMv8 instructions"
|
||||||
|
|
|
@ -53,11 +53,6 @@ $(warning Detected assembler with broken .inst; disassembly will be unreliable)
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(CONFIG_GENERIC_COMPAT_VDSO), y)
|
|
||||||
export CONFIG_COMPAT_VDSO := y
|
|
||||||
compat_vdso := -DCONFIG_COMPAT_VDSO=1
|
|
||||||
endif
|
|
||||||
|
|
||||||
KBUILD_CFLAGS += -mgeneral-regs-only $(lseinstr) $(brokengasinst) \
|
KBUILD_CFLAGS += -mgeneral-regs-only $(lseinstr) $(brokengasinst) \
|
||||||
$(compat_vdso) $(cc_has_k_constraint)
|
$(compat_vdso) $(cc_has_k_constraint)
|
||||||
KBUILD_CFLAGS += -fno-asynchronous-unwind-tables
|
KBUILD_CFLAGS += -fno-asynchronous-unwind-tables
|
||||||
|
|
Loading…
Reference in New Issue