qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH] linux-user: fix settime old value location
@ 2016-09-15 14:52 Marc-André Lureau
  2016-09-15 15:03 ` Peter Maydell
  0 siblings, 1 reply; 2+ messages in thread
From: Marc-André Lureau @ 2016-09-15 14:52 UTC (permalink / raw)
  To: qemu-devel; +Cc: riku.voipio, erikd, Marc-André Lureau

old_value is the 4th argument of timer_settime(), not the 2nd.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
 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 ca06943..345e971 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -11679,7 +11679,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
             target_to_host_itimerspec(&hspec_new, arg3);
             ret = get_errno(
                           timer_settime(htimer, arg2, &hspec_new, &hspec_old));
-            host_to_target_itimerspec(arg2, &hspec_old);
+            host_to_target_itimerspec(arg4, &hspec_old);
         }
         break;
     }
-- 
2.10.0

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [Qemu-devel] [PATCH] linux-user: fix settime old value location
  2016-09-15 14:52 [Qemu-devel] [PATCH] linux-user: fix settime old value location Marc-André Lureau
@ 2016-09-15 15:03 ` Peter Maydell
  0 siblings, 0 replies; 2+ messages in thread
From: Peter Maydell @ 2016-09-15 15:03 UTC (permalink / raw)
  To: Marc-André Lureau; +Cc: QEMU Developers, Riku Voipio, Erik de Castro Lopo

On 15 September 2016 at 15:52, Marc-André Lureau
<marcandre.lureau@redhat.com> wrote:
> old_value is the 4th argument of timer_settime(), not the 2nd.
>
> Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
> ---
>  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 ca06943..345e971 100644
> --- a/linux-user/syscall.c
> +++ b/linux-user/syscall.c
> @@ -11679,7 +11679,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
>              target_to_host_itimerspec(&hspec_new, arg3);
>              ret = get_errno(
>                            timer_settime(htimer, arg2, &hspec_new, &hspec_old));
> -            host_to_target_itimerspec(arg2, &hspec_old);
> +            host_to_target_itimerspec(arg4, &hspec_old);
>          }
>          break;
>      }

This is definitely a bug, but not the only one here.
host_to_target_itimerspec() and target_to_host_itimerspec() can both
return -TARGET_EFAULT, but we are ignoring their return values.
Also old_value may be NULL but we don't check for that.

thanks
-- PMM

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2016-09-15 15:05 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-09-15 14:52 [Qemu-devel] [PATCH] linux-user: fix settime old value location Marc-André Lureau
2016-09-15 15:03 ` Peter Maydell

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).