diff mbox series

[for-8.1] target/m68k: Fix semihost lseek offset computation

Message ID 20230801154519.3505531-1-peter.maydell@linaro.org
State Superseded
Headers show
Series [for-8.1] target/m68k: Fix semihost lseek offset computation | expand

Commit Message

Peter Maydell Aug. 1, 2023, 3:45 p.m. UTC
The arguments for deposit64 are (value, start, length, fieldval); this
appears to have thought they were (value, fieldval, start,
length). Reorder the parameters to match the actual function.

Cc: qemu-stable@nongnu.org
Fixes: 950272506d ("target/m68k: Use semihosting/syscalls.h")
Reported-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
Same fix for m68k as Keith Packard just sent for nios2
---
 target/m68k/m68k-semi.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Philippe Mathieu-Daudé Aug. 1, 2023, 6:21 p.m. UTC | #1
On 1/8/23 17:45, Peter Maydell wrote:
> The arguments for deposit64 are (value, start, length, fieldval); this
> appears to have thought they were (value, fieldval, start,
> length). Reorder the parameters to match the actual function.
> 
> Cc: qemu-stable@nongnu.org
> Fixes: 950272506d ("target/m68k: Use semihosting/syscalls.h")
> Reported-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
> ---
> Same fix for m68k as Keith Packard just sent for nios2
> ---
>   target/m68k/m68k-semi.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/target/m68k/m68k-semi.c b/target/m68k/m68k-semi.c
> index 88ad9ba8144..239f6e44e90 100644
> --- a/target/m68k/m68k-semi.c
> +++ b/target/m68k/m68k-semi.c
> @@ -166,7 +166,7 @@ void do_m68k_semihosting(CPUM68KState *env, int nr)
>           GET_ARG64(2);
>           GET_ARG64(3);
>           semihost_sys_lseek(cs, m68k_semi_u64_cb, arg0,
> -                           deposit64(arg2, arg1, 32, 32), arg3);
> +                           deposit64(arg2, 32, 32, arg1), arg3);
>           break;
>   
>       case HOSTED_RENAME:

Thanks for writing the fix!

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Philippe Mathieu-Daudé Aug. 1, 2023, 9:46 p.m. UTC | #2
On 1/8/23 17:45, Peter Maydell wrote:
> The arguments for deposit64 are (value, start, length, fieldval); this
> appears to have thought they were (value, fieldval, start,
> length). Reorder the parameters to match the actual function.
> 
> Cc: qemu-stable@nongnu.org
> Fixes: 950272506d ("target/m68k: Use semihosting/syscalls.h")
> Reported-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
> ---
> Same fix for m68k as Keith Packard just sent for nios2
> ---
>   target/m68k/m68k-semi.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)

Thanks, queued via misc-fixes.
diff mbox series

Patch

diff --git a/target/m68k/m68k-semi.c b/target/m68k/m68k-semi.c
index 88ad9ba8144..239f6e44e90 100644
--- a/target/m68k/m68k-semi.c
+++ b/target/m68k/m68k-semi.c
@@ -166,7 +166,7 @@  void do_m68k_semihosting(CPUM68KState *env, int nr)
         GET_ARG64(2);
         GET_ARG64(3);
         semihost_sys_lseek(cs, m68k_semi_u64_cb, arg0,
-                           deposit64(arg2, arg1, 32, 32), arg3);
+                           deposit64(arg2, 32, 32, arg1), arg3);
         break;
 
     case HOSTED_RENAME: