[MIPS] compat: handle argument endianess of sys32_(f)truncate64 with merge_64
authorRalf Baechle <ralf@linux-mips.org>
Tue, 29 Jan 2008 10:15:02 +0000 (10:15 +0000)
committerRalf Baechle <ralf@linux-mips.org>
Tue, 29 Jan 2008 10:15:02 +0000 (10:15 +0000)
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/kernel/linux32.c

index 2b8ec11..65af3cc 100644 (file)
@@ -174,36 +174,16 @@ struct rlimit32 {
        int     rlim_max;
 };
 
-#ifdef __MIPSEB__
-asmlinkage long sys32_truncate64(const char __user * path, unsigned long __dummy,
-       int length_hi, int length_lo)
-#endif
-#ifdef __MIPSEL__
-asmlinkage long sys32_truncate64(const char __user * path, unsigned long __dummy,
-       int length_lo, int length_hi)
-#endif
+asmlinkage long sys32_truncate64(const char __user * path,
+       unsigned long __dummy, int a2, int a3)
 {
-       loff_t length;
-
-       length = ((unsigned long) length_hi << 32) | (unsigned int) length_lo;
-
-       return sys_truncate(path, length);
+       return sys_truncate(path, merge_64(a2, a3));
 }
 
-#ifdef __MIPSEB__
 asmlinkage long sys32_ftruncate64(unsigned int fd, unsigned long __dummy,
-       int length_hi, int length_lo)
-#endif
-#ifdef __MIPSEL__
-asmlinkage long sys32_ftruncate64(unsigned int fd, unsigned long __dummy,
-       int length_lo, int length_hi)
-#endif
+       int a2, int a3)
 {
-       loff_t length;
-
-       length = ((unsigned long) length_hi << 32) | (unsigned int) length_lo;
-
-       return sys_ftruncate(fd, length);
+       return sys_ftruncate(fd, merge_64(a2, a3));
 }
 
 static inline long