Fedora Account System
Red Hat Associate
Red Hat Customer
The assembler files in stock X and Mesa, do not use GNU stacks on Linux systems, which means they will not work properly with exec-shield. I fixed this problem in XFree86 4.3.0 by writing the XFree86-4.3.0-redhat-exec-shield-GNU-stack.patch patch, which patched every assembler file to include .note.GNU-stack sections. While that is considered a cleaner solution, my patch was non-portable to non-GNU systems, so unsuitable for upstream acceptance as-was. The patch was disabled for X.org due to failure to apply, and didn't get ported forward yet. Nobody's noticed that X doesn't work with exec-shield aparently until now. ;o) Jakub suggested an alternate solution of passing the assembler "-Wa,--noexecstack", which is a simpler workaround for now instead of porting patches each release or spending time to make sure the patch works on every OS in existance.
Modified AsCmd as follows in 6.7.0-2 -#define AsCmd CcCmd -c -x assembler +#define AsCmd CcCmd -c -x assembler -Wa,--noexecstack