• Mathias Krause's avatar
    perf x86: Fix perf to use non-executable stack, again · 6392b4eb
    Mathias Krause authored
    arch/x86/tests/regs_load.S is missing the linker note about the stack
    requirements, therefore making the linker fall back to an executable
    stack. As this object gets linked against the final perf binary, it'll
    needlessly end up with an executable stack. Fix this by adding the
    appropriate linker note.
    
    Also add a global linker flag to prevent future regressions, as
    suggested by Jiri. This way perf won't get an executable stack even if
    we fail to add the .GNU-stack linker note to future assembler files.
    Though, doing so might create regressions the other way around, when
    (statically) linking against libraries needing an executable stack.
    But, apparently, regressing in that direction is wanted as it is an
    indicator of poor code quality -- or just missing linker notes.
    
    Fixes: 3c8b06f9 ("perf tests x86: Introduce perf_regs_load function")
    Signed-off-by: default avatarMathias Krause <minipli@googlemail.com>
    Acked-by: default avatarIngo Molnar <mingo@kernel.org>
    Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
    Cc: Paul Mackerras <paulus@samba.org>
    Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
    Link: http://lkml.kernel.org/r/1398617466-22749-1-git-send-email-minipli@googlemail.comSigned-off-by: default avatarJiri Olsa <jolsa@kernel.org>
    6392b4eb
regs_load.S 1.83 KB