https://sourceware.org/bugzilla/show_bug.cgi?id=32671

            Bug ID: 32671
           Summary: Default to erroring out on executable stacks
           Product: binutils
           Version: unspecified
            Status: NEW
          Severity: normal
          Priority: P2
         Component: ld
          Assignee: unassigned at sourceware dot org
          Reporter: sam at gentoo dot org
                CC: adhemerval.zanella at linaro dot org, fweimer at redhat dot 
com,
                    nickc at redhat dot com
        Depends on: 29592
  Target Milestone: ---

Background:
 glibc-2.41 made two changes with regard to executable stacks:
 1) adding a tunable to allow banning them, currently defaulting to permissive 
(allow);

 2) ceasing making the stack executable on dlopen.

 We're discussing 2) in PR32653 and I don't want to relitigate the actual glibc
 change over here.

-

I think we ought to have binutils-2.45 default to erroring out on executable
stacks. We started to warn on this by default in binutils-2.39 (PR29072) &
introduced configure options for this to make it error out too (off by
default). We already did a bunch of testsuite updates.

I've already had to explain the situation to a few people and I can't see a
reason to justify keeping the default as just warning.

Failing to build is far superior to possible runtime failures when dlopen
fails, or, later, glibc makes that loader default change (1) above).

The only blocker I see is PR29592 needs sorting out (though we could skirt that
by initially only making the change for some ABIs, that's a hack).

We would still of course allow opting-in.

Thoughts?


Referenced Bugs:

https://sourceware.org/bugzilla/show_bug.cgi?id=29592
[Bug 29592] [2.39 Regression][bisected] Exec stack warning causes go programs
with cgo to fail to link on mips
-- 
You are receiving this mail because:
You are on the CC list for the bug.

Reply via email to