x86/vdso: VDSO updates and fixes for sframes
| From: | Jens Remus <jremus-AT-linux.ibm.com> | |
| To: | linux-kernel-AT-vger.kernel.org, linux-trace-kernel-AT-vger.kernel.org, bpf-AT-vger.kernel.org, x86-AT-kernel.org, linux-mm-AT-kvack.org, Steven Rostedt <rostedt-AT-kernel.org> | |
| Subject: | [PATCH v7 0/6] x86/vdso: VDSO updates and fixes for sframes | |
| Date: | Tue, 03 Feb 2026 18:19:51 +0100 | |
| Message-ID: | <20260203171958.1522030-1-jremus@linux.ibm.com> | |
| Cc: | Jens Remus <jremus-AT-linux.ibm.com>, Josh Poimboeuf <jpoimboe-AT-kernel.org>, Masami Hiramatsu <mhiramat-AT-kernel.org>, Mathieu Desnoyers <mathieu.desnoyers-AT-efficios.com>, Peter Zijlstra <peterz-AT-infradead.org>, Ingo Molnar <mingo-AT-kernel.org>, Jiri Olsa <jolsa-AT-kernel.org>, Arnaldo Carvalho de Melo <acme-AT-kernel.org>, Namhyung Kim <namhyung-AT-kernel.org>, Thomas Gleixner <tglx-AT-linutronix.de>, Andrii Nakryiko <andrii-AT-kernel.org>, Indu Bhagat <indu.bhagat-AT-oracle.com>, "Jose E. Marchesi" <jemarch-AT-gnu.org>, Beau Belgrave <beaub-AT-linux.microsoft.com>, Linus Torvalds <torvalds-AT-linux-foundation.org>, Andrew Morton <akpm-AT-linux-foundation.org>, Florian Weimer <fweimer-AT-redhat.com>, Kees Cook <kees-AT-kernel.org>, "Carlos O'Donell" <codonell-AT-redhat.com>, Sam James <sam-AT-gentoo.org>, Dylan Hatch <dylanbhatch-AT-google.com>, Borislav Petkov <bp-AT-alien8.de>, Dave Hansen <dave.hansen-AT-linux.intel.com>, David Hildenbrand <david-AT-redhat.com>, "H. Peter Anvin" <hpa-AT-zytor.com>, "Liam R. Howlett" <Liam.Howlett-AT-oracle.com>, Lorenzo Stoakes <lorenzo.stoakes-AT-oracle.com>, Michal Hocko <mhocko-AT-suse.com>, Mike Rapoport <rppt-AT-kernel.org>, Suren Baghdasaryan <surenb-AT-google.com>, Vlastimil Babka <vbabka-AT-suse.cz>, Heiko Carstens <hca-AT-linux.ibm.com>, Vasily Gorbik <gor-AT-linux.ibm.com> | |
| Archive-link: | Article |
This enables generation of SFrame V3 stack trace information for VDSO on x86-64. It's a continuation of Josh's and Steve's work: https://lore.kernel.org/all/cover.1737511963.git.jpoimboe... https://lore.kernel.org/all/20250422183439.895236512@good... This series focuses only on the VDSO code. They are helpful fixes and updates that doesn't rely on sframes (although the last patch is sframe related). This series applies on top of tip:x86/entry: git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git x86/entry Like the unwind user sframe series [1] it depends on the upcoming binutils 2.46 release to be used to build the VDSO with SFrame V3 stack trace information (using the assembler option --gsframe-3). [1]: [PATCH v13 00/18] unwind_deferred: Implement sframe handling, https://lore.kernel.org/all/20260127150554.2760964-1-jrem... Changes in v7 (see individual patch notes): - Rebase on H. Peter Anvin's vDSO changes on tip:x86/entry. (Peter) - Simplify adding assembler option -Wa,--gsframe-3. Add for vdso64 only. - Align to .eh_frame and mark .sframe as KEEP in vDSO linker script. Note that GNU linker 2.46 will mark .sframe as KEEP in its default linker script as well. Changes in v6: - SFrame V3 support (SFrame V2 is not supported). - Prevent GNU_SFRAME program table entry to empty .sframe section. - Integrate v5 review feedback. (Josh) Regards, Jens Josh Poimboeuf (6): x86/vdso: Fix DWARF generation for getrandom() x86/asm: Avoid emitting DWARF CFI for non-VDSO x86/asm: Simplify VDSO DWARF generation x86/vdso: Use SYM_FUNC_{START,END} in __kernel_vsyscall() x86/vdso: Use CFI macros in __vdso_sgx_enter_enclave() x86/vdso: Enable sframe generation in VDSO arch/Kconfig | 7 +++ arch/x86/entry/vdso/common/vdso-layout.lds.S | 13 ++++- arch/x86/entry/vdso/vdso32/system_call.S | 10 +--- arch/x86/entry/vdso/vdso64/Makefile | 1 + .../x86/entry/vdso/vdso64/vgetrandom-chacha.S | 3 +- arch/x86/entry/vdso/vdso64/vsgx.S | 19 +++---- arch/x86/include/asm/dwarf2.h | 54 +++++++++++++------ arch/x86/include/asm/linkage.h | 33 +++++++++--- arch/x86/include/asm/vdso.h | 1 - 9 files changed, 95 insertions(+), 46 deletions(-) -- 2.51.0
