Am Samstag, 29. Januar 2022, 12:03:42 CET schrieb Helge Deller: > Add minimal vDSO support, which provides the signal trampoline helpers, but > none of the userspace syscall helpers like time functions. > > The big benefit of this vDSO implementation is, that we now don't need an > executeable stack any longer. PA-RISC is one of the last architectures where > an executeable stack was needed in oder to implement the signal trampolines > by putting assembly instructions on the stack which then gets executed. > With this implementation the kernel will utilize the assembler statements > in the vDSO page which is mapped into each userspace application instead > and just put the pointers to the signal information on the stack. > By dropping the need for executable stacks we now avoid running into issues > with various applications in Debian which nowadays want non-executable > stacks for security reasons. Additionally, alternative stacks are supported > better as well. > > This code is based on an initial implementation by Randolph Chung from 2006: > https://lore.kernel.org/linux-parisc/4544A34A.6080700@xxxxxxxxx/ > > I did the porting and lifted the code to current code base. Dave fixed the > unwind code so that gdb and glibc are able to backtrace through the code. An > additional patch to gdb will be pushed upstream by Dave. There are a few extra newlines in the first few files which you may or may not want to remove. OTOH I would split out the change to mm_context_t into it's own patch, without adding the vdso_base there. This would reduce the overall size of the actual vdso patch and eases review. Eike
Attachment:
signature.asc
Description: This is a digitally signed message part.