parisc: Use compat layer for msgctl, shmat, shmctl and semtimedop syscalls
authorHelge Deller <deller@gmx.de>
Mon, 10 Nov 2014 20:46:18 +0000 (21:46 +0100)
committerHelge Deller <deller@gmx.de>
Mon, 10 Nov 2014 21:23:47 +0000 (22:23 +0100)
commit2fe749f50b0bec07650ef135b29b1f55bf543869
tree14e9710de27abed444b6b04eecf21249ee72f4a0
parent8dd95c68f32b821ec02e89c42a4e500d6aebbd84
parisc: Use compat layer for msgctl, shmat, shmctl and semtimedop syscalls

Switch over the msgctl, shmat, shmctl and semtimedop syscalls to use the compat
layer. The problem was found with the debian procenv package, which called
shmctl(0, SHM_INFO, &info);
in which the shmctl syscall then overwrote parts of the surrounding areas on
the stack on which the info variable was stored and thus lead to a segfault
later on.

Additionally fix the definition of struct shminfo64 to use unsigned longs like
the other architectures. This has no impact on userspace since we only have a
32bit userspace up to now.

Signed-off-by: Helge Deller <deller@gmx.de>
Cc: John David Anglin <dave.anglin@bell.net>
Cc: <stable@vger.kernel.org> # v3.10+
arch/parisc/include/uapi/asm/shmbuf.h
arch/parisc/kernel/syscall_table.S