On Sep 19 2017, Joseph Myers <jos...@codesourcery.com> wrote: > I've sent a glibc patch > <https://sourceware.org/ml/libc-alpha/2017-09/msg00734.html>. I think the > key questions for architecture experts now are: on each of those three > architectures, do trampolines ever require executable stacks, and, if they > do, how does this work at present when the kernel defaults to > non-executable and my understanding at > <https://sourceware.org/ml/libc-alpha/2017-09/msg00747.html> would be that > glibc would only make thread stacks executable on those architectures, not > the main process stacks, and GCC will never generate an explicit marker on > those architectures to request an executable stack?
For ia64 on linux there is EF_IA_64_LINUX_EXECUTABLE_STACK to request executable heap and stack. But since ia64 uses function descriptors, trampolines never need that. Andreas. -- Andreas Schwab, SUSE Labs, sch...@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different."