]> git.karo-electronics.de Git - karo-tx-linux.git/commit
[SPARC64]: Fix bugs in SYSV IPC handling in 64-bit processes.
authorDavid S. Miller <davem@davemloft.net>
Thu, 18 Oct 2007 16:48:42 +0000 (18:48 +0200)
committerAdrian Bunk <bunk@kernel.org>
Thu, 18 Oct 2007 16:48:42 +0000 (18:48 +0200)
commitecd7e9d89a57343c5fb687b9651f1fc1adab1dde
tree83b715a84f4d802259e8772f6d367c65d4f6e9ab
parent43f903ce5f313983fca91a96f786730cf8c8c645
[SPARC64]: Fix bugs in SYSV IPC handling in 64-bit processes.

Thanks to Tom Callaway for the excellent bug report and
test case.

sys_ipc() has several problems, most to due with semaphore
call handling:

1) 'err' return should be a 'long'
2) "union semun" is passed in a register on 64-bit compared
   to 32-bit which provides it on the stack and therefore
   by reference
3) Second and third arguments to SEMCTL are swapped compared
   to 32-bit.

Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Adrian Bunk <bunk@kernel.org>
arch/sparc64/kernel/sys_sparc.c