qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] linux-user: fix signal() syscall on x86_64


From: Peter Maydell
Subject: Re: [Qemu-devel] [PATCH] linux-user: fix signal() syscall on x86_64
Date: Fri, 1 Jul 2016 14:35:53 +0100

On 1 July 2016 at 12:59, Wirth, Allan <address@hidden> wrote:
> Linux on X86_64 does not use sel_arg_struct for select(), the args are
> passed directly. This patch switches a define so X86_64 uses the correct
> calling convention.
>
> Signed-off-by: Allan Wirth <address@hidden>
> ---
>  linux-user/syscall.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/linux-user/syscall.c b/linux-user/syscall.c
> index 8bf6205..209b2a7 100644
> --- a/linux-user/syscall.c
> +++ b/linux-user/syscall.c
> @@ -8002,7 +8002,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long 
> arg1,
>          break;
>  #if defined(TARGET_NR_select)
>      case TARGET_NR_select:
> -#if defined(TARGET_S390X) || defined(TARGET_ALPHA)
> +#if defined(TARGET_S390X) || defined(TARGET_ALPHA) || defined(TARGET_X86_64)
>          ret = do_select(arg1, arg2, arg3, arg4, arg5);
>  #else
>          {

There is a cleaner approach which we should use to fix this:
see my comments in reply to this recent patch trying to do
a similar thing:
https://patchwork.kernel.org/patch/9185927/

thanks
-- PMM



reply via email to

[Prev in Thread] Current Thread [Next in Thread]