summaryrefslogtreecommitdiffstats
path: root/arch/sparc/kernel/sys32.S
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2009-07-28 03:10:28 +0200
committerDavid S. Miller <davem@davemloft.net>2009-07-28 03:10:28 +0200
commit9a926d86b29a25456f1dd8c9df938e151b1c3978 (patch)
treee718df684012799022e726ebdc007b1eab9cf77a /arch/sparc/kernel/sys32.S
parentsparc: Fix cleanup crash in bbc_envctrl_cleanup() (diff)
downloadlinux-9a926d86b29a25456f1dd8c9df938e151b1c3978.tar.xz
linux-9a926d86b29a25456f1dd8c9df938e151b1c3978.zip
sparc64: Sign extend length arg to truncate syscalls when compat.
The first thing sys_truncate() and sys_ftruncate() do is sign extend the unsigned length arg to a signed type. Thanks to Benjamin Herrenschmidt for the tip. Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch/sparc/kernel/sys32.S')
-rw-r--r--arch/sparc/kernel/sys32.S2
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/sparc/kernel/sys32.S b/arch/sparc/kernel/sys32.S
index f061c4dda9ef..577f8fab8b6b 100644
--- a/arch/sparc/kernel/sys32.S
+++ b/arch/sparc/kernel/sys32.S
@@ -138,6 +138,8 @@ SIGN2(sys32_splice, sys_splice, %o0, %o1)
SIGN2(sys32_sync_file_range, compat_sync_file_range, %o0, %o5)
SIGN2(sys32_tee, sys_tee, %o0, %o1)
SIGN1(sys32_vmsplice, compat_sys_vmsplice, %o0)
+SIGN1(sys32_truncate, sys_truncate, %o1)
+SIGN1(sys32_ftruncate, sys_ftruncate, %o1)
.globl sys32_mmap2
sys32_mmap2: