qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH 1/9] bsd-user: Don't truncate the return value from freebsd_s


From: Richard Henderson
Subject: Re: [PATCH 1/9] bsd-user: Don't truncate the return value from freebsd_syscall
Date: Sat, 11 Feb 2023 09:12:17 -1000
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.7.1

On 2/10/23 13:18, Warner Losh wrote:
From: Doug Rabson <dfr@rabson.org>

System call return values on FreeBSD are in a register (which is spelled
api_long in qemu). This was being assigned into an int variable which

s/api/abi/

causes problems for 64bit targets.

Resolves: https://github.com/qemu-bsd-user/qemu-bsd-user/issues/40
Signed-off-by: Doug Rabson <dfr@rabson.org>
Reviewed-by: Warner Losh <imp@bsdimp.com>
[ Edited commit message for upstreaming into qemu-project ]
Signed-off-by: Warner Losh <imp@bsdimp.com>
---
  bsd-user/freebsd/os-syscall.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

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

r~


diff --git a/bsd-user/freebsd/os-syscall.c b/bsd-user/freebsd/os-syscall.c
index 57996cad8ae..b4a663fc021 100644
--- a/bsd-user/freebsd/os-syscall.c
+++ b/bsd-user/freebsd/os-syscall.c
@@ -512,7 +512,7 @@ abi_long do_freebsd_syscall(void *cpu_env, int num, 
abi_long arg1,
                              abi_long arg8)
  {
      CPUState *cpu = env_cpu(cpu_env);
-    int ret;
+    abi_long ret;
trace_guest_user_syscall(cpu, num, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8);
      if (do_strace) {




reply via email to

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