Commit d4e9cffa161da806cb4bc9df4a4e49d287156bfa

Authored by Ralf Baechle
1 parent 0e8774b621

[MIPS] compat: handle argument endianess of sys32_(f)truncate64 with merge_64

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

Showing 1 changed file with 5 additions and 25 deletions Side-by-side Diff

arch/mips/kernel/linux32.c
... ... @@ -174,36 +174,16 @@
174 174 int rlim_max;
175 175 };
176 176  
177   -#ifdef __MIPSEB__
178   -asmlinkage long sys32_truncate64(const char __user * path, unsigned long __dummy,
179   - int length_hi, int length_lo)
180   -#endif
181   -#ifdef __MIPSEL__
182   -asmlinkage long sys32_truncate64(const char __user * path, unsigned long __dummy,
183   - int length_lo, int length_hi)
184   -#endif
  177 +asmlinkage long sys32_truncate64(const char __user * path,
  178 + unsigned long __dummy, int a2, int a3)
185 179 {
186   - loff_t length;
187   -
188   - length = ((unsigned long) length_hi << 32) | (unsigned int) length_lo;
189   -
190   - return sys_truncate(path, length);
  180 + return sys_truncate(path, merge_64(a2, a3));
191 181 }
192 182  
193   -#ifdef __MIPSEB__
194 183 asmlinkage long sys32_ftruncate64(unsigned int fd, unsigned long __dummy,
195   - int length_hi, int length_lo)
196   -#endif
197   -#ifdef __MIPSEL__
198   -asmlinkage long sys32_ftruncate64(unsigned int fd, unsigned long __dummy,
199   - int length_lo, int length_hi)
200   -#endif
  184 + int a2, int a3)
201 185 {
202   - loff_t length;
203   -
204   - length = ((unsigned long) length_hi << 32) | (unsigned int) length_lo;
205   -
206   - return sys_ftruncate(fd, length);
  186 + return sys_ftruncate(fd, merge_64(a2, a3));
207 187 }
208 188  
209 189 static inline long