[PATCH] linux-user: Use target abi_int type for pipefd[1] in pipe()

Helge Deller posted 1 patch 3 years, 6 months ago
Failed in applying to current master (apply log)
[PATCH] linux-user: Use target abi_int type for pipefd[1] in pipe()
Posted by Helge Deller 3 years, 6 months ago
When writing back the fd[1] pipe file handle to emulated userspace
memory, use sizeof(abi_int) as offset insted of the hosts's int type.
There is no functional change in this patch.

Signed-off-by: Helge Deller <deller@gmx.de>

diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 991b85e6b4..1e6e814871 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -1624,7 +1624,7 @@ static abi_long do_pipe(CPUArchState *cpu_env, abi_ulong pipedes,
     }

     if (put_user_s32(host_pipe[0], pipedes)
-        || put_user_s32(host_pipe[1], pipedes + sizeof(host_pipe[0])))
+        || put_user_s32(host_pipe[1], pipedes + sizeof(abi_int)))
         return -TARGET_EFAULT;
     return get_errno(ret);
 }
Re: [PATCH] linux-user: Use target abi_int type for pipefd[1] in pipe()
Posted by Laurent Vivier 3 years, 6 months ago
Le 17/07/2022 à 18:21, Helge Deller a écrit :
> When writing back the fd[1] pipe file handle to emulated userspace
> memory, use sizeof(abi_int) as offset insted of the hosts's int type.
> There is no functional change in this patch.
> 
> Signed-off-by: Helge Deller <deller@gmx.de>
> 
> diff --git a/linux-user/syscall.c b/linux-user/syscall.c
> index 991b85e6b4..1e6e814871 100644
> --- a/linux-user/syscall.c
> +++ b/linux-user/syscall.c
> @@ -1624,7 +1624,7 @@ static abi_long do_pipe(CPUArchState *cpu_env, abi_ulong pipedes,
>       }
> 
>       if (put_user_s32(host_pipe[0], pipedes)
> -        || put_user_s32(host_pipe[1], pipedes + sizeof(host_pipe[0])))
> +        || put_user_s32(host_pipe[1], pipedes + sizeof(abi_int)))
>           return -TARGET_EFAULT;
>       return get_errno(ret);
>   }
> 

Applied to my linux-user-for-7.1 branch.

Thanks,
Laurent


Re: [PATCH] linux-user: Use target abi_int type for pipefd[1] in pipe()
Posted by Richard Henderson 3 years, 6 months ago
On 7/17/22 21:51, Helge Deller wrote:
> When writing back the fd[1] pipe file handle to emulated userspace
> memory, use sizeof(abi_int) as offset insted of the hosts's int type.
> There is no functional change in this patch.
> 
> Signed-off-by: Helge Deller<deller@gmx.de>

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>

r~