• Vineet Gupta's avatar
    ARC: mm: allow mprotect to make stack mappings executable · cfebfe7a
    Vineet Gupta authored
    commit 93312b6d upstream.
    
    mprotect(EXEC) was failing for stack mappings as default vm flags was
    missing MAYEXEC.
    
    This was triggered by glibc test suite nptl/tst-execstack testcase
    
    What is surprising is that despite running LTP for years on, we didn't
    catch this issue as it lacks a directed test case.
    
    gcc dejagnu tests with nested functions also requiring exec stack work
    fine though because they rely on the GNU_STACK segment spit out by
    compiler and handled in kernel elf loader.
    
    This glibc case is different as the stack is non exec to begin with and
    a dlopen of shared lib with GNU_STACK segment triggers the exec stack
    proceedings using a mprotect(PROT_EXEC) which was broken.
    
    CC: stable@vger.kernel.org
    Signed-off-by: default avatarVineet Gupta <vgupta@synopsys.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    cfebfe7a
page.h 3.11 KB