lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20260116204057.386268-1-hpa@zytor.com>
Date: Fri, 16 Jan 2026 12:40:53 -0800
From: "H. Peter Anvin" <hpa@...or.com>
To: Thomas Gleixner <tglx@...nel.org>, Ingo Molnar <mingo@...hat.com>,
        Borislav Petkov <bp@...en8.de>,
        Dave Hansen <dave.hansen@...ux.intel.com>
Cc: "H. Peter Anvin" <hpa@...or.com>, x86@...nel.org,
        Chris Mason <clm@...a.com>, Thorsten Leemhuis <linux@...mhuis.info>,
        linux-kernel@...r.kernel.org
Subject: [PATCH v2 0/3] tip:x86/entry: fix vdso build restructuring fallout

After integration in linux-next, the movement of files from the vdso
restructuring broke "make vdso_install" and one of the kernel self
tests. [Thorsten Leemhuis, kernel test robot]

It also contained an incorrect filtering pattern which although
non-manifest at this point, is a forward compatibility bug [Chris
Mason]

    x86/entry/vdso, selftest: update location of vgetrandom-chacha.S
    x86/entry/vdso: x86/entry/vdso: fix filtering of compiler flags
    x86/entry/vdso: update the object paths for "make vdso_install"

--- 
 arch/x86/Makefile                                | 6 +++---
 arch/x86/entry/vdso/common/Makefile.include      | 6 +++---
 tools/testing/selftests/vDSO/vgetrandom-chacha.S | 2 +-
 3 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/arch/x86/Makefile b/arch/x86/Makefile
index 9ab7522ced18..5f881460a8b5 100644
--- a/arch/x86/Makefile
+++ b/arch/x86/Makefile
@@ -318,9 +318,9 @@ PHONY += install
 install:
 	$(call cmd,install)
 
-vdso-install-$(CONFIG_X86_64)		+= arch/x86/entry/vdso/vdso64.so.dbg
-vdso-install-$(CONFIG_X86_X32_ABI)	+= arch/x86/entry/vdso/vdsox32.so.dbg
-vdso-install-$(CONFIG_COMPAT_32)	+= arch/x86/entry/vdso/vdso32.so.dbg
+vdso-install-$(CONFIG_X86_64)	   += arch/x86/entry/vdso/vdso64/vdso64.so.dbg
+vdso-install-$(CONFIG_X86_X32_ABI) += arch/x86/entry/vdso/vdso64/vdsox32.so.dbg
+vdso-install-$(CONFIG_COMPAT_32)   += arch/x86/entry/vdso/vdso32/vdso32.so.dbg
 
 archprepare: checkbin
 checkbin:
diff --git a/arch/x86/entry/vdso/common/Makefile.include b/arch/x86/entry/vdso/common/Makefile.include
index 3514b4a6869b..bf5798cb6781 100644
--- a/arch/x86/entry/vdso/common/Makefile.include
+++ b/arch/x86/entry/vdso/common/Makefile.include
@@ -23,9 +23,9 @@ $(obj)/%.lds : KBUILD_CPPFLAGS += $(CPPFLAGS_VDSO_LDS)
 #
 flags-remove-y += \
 	-D__KERNEL__ -mcmodel=kernel -mregparm=3 \
-	-fno-pic -fno-PIC -fno-pie fno-PIE \
+	-fno-pic -fno-PIC -fno-pie -fno-PIE \
 	-mfentry -pg \
-	$(RANDSTRUCT_CFLAGS) $(GCC_PLUGIN_CFLAGS) $(KSTACK_ERASE_CFLAGS) \
+	$(RANDSTRUCT_CFLAGS) $(GCC_PLUGINS_CFLAGS) $(KSTACK_ERASE_CFLAGS) \
 	$(RETPOLINE_CFLAGS) $(CC_FLAGS_LTO) $(CC_FLAGS_CFI) \
 	$(PADDING_CFLAGS)
 
@@ -45,7 +45,7 @@ flags-y += -fasynchronous-unwind-tables
 
 # Reset cf protections enabled by compiler default
 flags-y += $(call cc-option, -fcf-protection=none)
-flags-$(X86_USER_SHADOW_STACK) += $(call cc-option, -fcf-protection=return)
+flags-$(CONFIG_X86_USER_SHADOW_STACK) += $(call cc-option, -fcf-protection=return)
 # When user space IBT is supported, enable this.
 # flags-$(CONFIG_USER_IBT) += $(call cc-option, -fcf-protection=branch)
 
diff --git a/tools/testing/selftests/vDSO/vgetrandom-chacha.S b/tools/testing/selftests/vDSO/vgetrandom-chacha.S
index a4a82e1c28a9..10f982157a1f 100644
--- a/tools/testing/selftests/vDSO/vgetrandom-chacha.S
+++ b/tools/testing/selftests/vDSO/vgetrandom-chacha.S
@@ -16,5 +16,5 @@
 #elif defined(__s390x__)
 #include "../../../../arch/s390/kernel/vdso64/vgetrandom-chacha.S"
 #elif defined(__x86_64__)
-#include "../../../../arch/x86/entry/vdso/vgetrandom-chacha.S"
+#include "../../../../arch/x86/entry/vdso/vdso64/vgetrandom-chacha.S"
 #endif

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ