diff options
author | Atsushi Nemoto <anemo@mba.ocn.ne.jp> | 2007-05-18 00:46:13 +0900 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2007-06-06 19:34:32 +0100 |
commit | 8676d2e0244cbef294c7d9ad6e50048f9dfba9e0 (patch) | |
tree | 83cfb1392fc17f58494d9ef9f46d0e4f1f7d45ad /arch/mips/kernel/linux32.c | |
parent | fbd5604d56c4543457aeae6dda69c9b8a1405474 (diff) |
[MIPS] Fix some system calls with long long arguments
* O32 fadvise64() pass long long arguments by register pairs. Add
sys32 version for 64 bit kernel.
* N32 readahead() can pass a long long argument by one register. No
need to use sys32_readahead.
Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/kernel/linux32.c')
-rw-r--r-- | arch/mips/kernel/linux32.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/arch/mips/kernel/linux32.c b/arch/mips/kernel/linux32.c index 37849edd0645..06e04da211d5 100644 --- a/arch/mips/kernel/linux32.c +++ b/arch/mips/kernel/linux32.c @@ -556,6 +556,16 @@ asmlinkage long sys32_sync_file_range(int fd, int __pad, flags); } +asmlinkage long sys32_fadvise64_64(int fd, int __pad, + unsigned long a2, unsigned long a3, + unsigned long a4, unsigned long a5, + int flags) +{ + return sys_fadvise64_64(fd, + merge_64(a2, a3), merge_64(a4, a5), + flags); +} + save_static_function(sys32_clone); __attribute_used__ noinline static int _sys32_clone(nabi_no_regargs struct pt_regs regs) |