Messages in this thread | | | Date | Sun, 27 Apr 2014 18:29:44 +0200 | Subject | Re: [PATCH] perf x86: Fix perf to use non-executable stack, again | From | Mathias Krause <> |
| |
On 27 April 2014 18:16, Jiri Olsa <jolsa@redhat.com> wrote: > On Sun, Apr 27, 2014 at 06:07:30PM +0200, Mathias Krause wrote: >> On 27 April 2014 12:39, Jiri Olsa <jolsa@redhat.com> wrote: >> > On Sun, Apr 27, 2014 at 12:03:50PM +0200, Mathias Krause wrote: >> > [...] >> >> 2/ What if somebody tries to add/link code to perf that makes use of >> >> nested functions? That'll make perf fail as the trampoline code >> >> generated by gcc won't be executable due to the enforced >> >> non-executable stack by -Wl,-z,noexecstack. >> > >> > I guess in that case he would change the Makefile as well? >> >> Not necessarily. What if a later version of a library already used by >> perf needs an executable stack because it now makes use of nested >> functions? Unlikely, though in that case no change to perf would be >> made, but perf would then require an executable stack, too. > > I tried you can run binary with noexecstack having dynamic > library dependency wit execstack
Well, it might work on your system but it won't work on mine. See this bug, why: https://sourceware.org/bugzilla/show_bug.cgi?id=12492
> [...] >> >> > or insert test case for perf's executable stack to 'perf test' >> >> That won't work for systems preventing processes getting an executable >> stack in the first place. That was the reason I stumbled about the > > could be disabled on such systems
Of course, it could be disabled, i.e. I could allow perf to get an executable stack. Though, I don't like my stacks to be executable ;)
Thanks, Mathias
> > jirka
| |