Re: [PATCH v4 05/39] x86/asm: Avoid emitting DWARF CFI for non-VDSO
Jens Remus <[email protected]>
| Newsgroups | org.kernel.vger.linux-toolchains,org.kernel.vger.linux-kernel,org.kernel.vger.linux-perf-users,org.kernel.vger.linux-trace-kernel |
|---|---|
| Organization | IBM Deutschland Research & Development GmbH |
| Message-ID | <[email protected]> |
On 22.01.2025 03:30, Josh Poimboeuf wrote: > It was decided years ago that .cfi_* annotations aren't maintainable in > the kernel. They were replaced by objtool unwind hints. For the kernel > proper, ensure the CFI_* macros don't do anything. > > On the other hand the VDSO library *does* use them, so user space can > unwind through it. > > Make sure these macros only work for VDSO. They aren't actually being > used outside of VDSO anyway, so there's no functional change. > > Signed-off-by: Josh Poimboeuf <[email protected]> > diff --git a/arch/x86/include/asm/dwarf2.h b/arch/x86/include/asm/dwarf2.h > -#ifndef BUILD_VDSO > - /* > - * Emit CFI data in .debug_frame sections, not .eh_frame sections. > - * The latter we currently just discard since we don't do DWARF > - * unwinding at runtime. So only the offline DWARF information is > - * useful to anyone. Note we should not use this directive if we > - * ever decide to enable DWARF unwinding at runtime. > - */ > - .cfi_sections .debug_frame > -#else > - /* > - * For the vDSO, emit both runtime unwind information and debug > - * symbols for the .dbg file. > - */ > - .cfi_sections .eh_frame, .debug_frame > -#endif > +#else /* !BUILD_VDSO */ > + Did you remove ".cfi_sections .debug_frame" on purpose from the !BUILD_VDSO path compared to V3? Presumably to not only not emit DWARF CFI from assembler, but any source? > +/* > + * On x86, these macros aren't used outside VDSO. As well they shouldn't be: > + * they're fragile and very difficult to maintain. > + */ Thanks and regards, Jens -- Jens Remus Linux on Z Development (D3303) +49-7031-16-1128 Office [email protected] IBM IBM Deutschland Research & Development GmbH; Vorsitzender des Aufsichtsrats: Wolfgang Wendt; Geschäftsführung: David Faller; Sitz der Gesellschaft: Böblingen; Registergericht: Amtsgericht Stuttgart, HRB 243294 IBM Data Privacy Statement: https://www.ibm.com/privacy/