tilegx: enable SYSCALL_WRAPPERS support
authorChris Metcalf <cmetcalf@tilera.com>
Fri, 18 May 2012 17:33:24 +0000 (13:33 -0400)
committerBen Hutchings <ben@decadent.org.uk>
Wed, 30 May 2012 23:43:19 +0000 (00:43 +0100)
commitd58599222e9066cdd0e7ef4f6e8bd701146a3aa2
tree26249f757f331b4295b81a015935902892c74fbf
parent31edc012f05bd1cea61df32b4f22f5227bba72d5
tilegx: enable SYSCALL_WRAPPERS support

commit e6d9668e119af44ae5bcd5f1197174531458afe3 upstream.

Some discussion with the glibc mailing lists revealed that this was
necessary for 64-bit platforms with MIPS-like sign-extension rules
for 32-bit values.  The original symptom was that passing (uid_t)-1 to
setreuid() was failing in programs linked -pthread because of the "setxid"
mechanism for passing setxid-type function arguments to the syscall code.
SYSCALL_WRAPPERS handles ensuring that all syscall arguments end up with
proper sign-extension and is thus the appropriate fix for this problem.

On other platforms (s390, powerpc, sparc64, and mips) this was fixed
in 2.6.28.6.  The general issue is tracked as CVE-2009-0029.

Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
arch/tile/Kconfig