-
Type: Bug
-
Resolution: Done
-
Priority: Critical - P2
-
Affects Version/s: None
-
Component/s: None
The newly introduced ppc64 optimized crc32c assembly routines is missing the required .note.GNU-stack section, leading to the stack of any executable that includes the generated object file having an executable stack. This can easily be seen by building MongoDB with ld.gold and adding LINKFLAGS="-Wl,--warn-execstack" to the build:
Linking build/cached/mongo/db/ops/update_driver_test /usr/bin/ld.gold: warning: /tmp/crc32-0bce4f.o: missing .note.GNU-stack section implies executable stack
Note that this affects all target architectures using the GNU toolchain, not just the ppc64le build, because the file is unconditionally compiled in, but its contents are #ifdef'ed out except on ppc64le.
Note that these changes were also backported to the 3.2 branch, so this will need to be fixed on both branches.
- has to be done before
-
SERVER-24120 Make link warnings fatal
- Closed
- is related to
-
SERVER-24117 Mongo binaries ELF stack has become executable
- Closed
-
WT-2658 Only include PPC-specific files in PPC builds
- Closed
- related to
-
SERVER-43421 Complete TODO listed in WT-2629
- Closed