mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-18 15:42:09 -06:00
linux-user: Bump do_syscall() up to 8 syscall arguments
On 32 bit MIPS a few syscalls have 7 arguments, and so to call them via NR_syscall the guest needs to be able to pass 8 arguments to do_syscall(). Raise the number of arguments do_syscall() takes accordingly. This fixes some gcc 4.6 compiler warnings about arg7 and arg8 variables being set and never used. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Riku Voipio <riku.voipio@iki.fi>
This commit is contained in:
parent
3002fa8472
commit
5945cfcb4b
3 changed files with 31 additions and 17 deletions
|
@ -4532,7 +4532,8 @@ int get_osversion(void)
|
|||
All errnos that do_syscall() returns must be -TARGET_<errcode>. */
|
||||
abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
|
||||
abi_long arg2, abi_long arg3, abi_long arg4,
|
||||
abi_long arg5, abi_long arg6)
|
||||
abi_long arg5, abi_long arg6, abi_long arg7,
|
||||
abi_long arg8)
|
||||
{
|
||||
abi_long ret;
|
||||
struct stat st;
|
||||
|
@ -6172,8 +6173,9 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
|
|||
#endif
|
||||
#ifdef TARGET_NR_syscall
|
||||
case TARGET_NR_syscall:
|
||||
ret = do_syscall(cpu_env,arg1 & 0xffff,arg2,arg3,arg4,arg5,arg6,0);
|
||||
break;
|
||||
ret = do_syscall(cpu_env, arg1 & 0xffff, arg2, arg3, arg4, arg5,
|
||||
arg6, arg7, arg8, 0);
|
||||
break;
|
||||
#endif
|
||||
case TARGET_NR_wait4:
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue