qemu-stable
[Top][All Lists]
Advanced

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

Re: [PATCH] target/m68k: Handle EXCP_SEMIHOSTING for m68k class CPU


From: Richard Henderson
Subject: Re: [PATCH] target/m68k: Handle EXCP_SEMIHOSTING for m68k class CPU
Date: Sat, 28 Dec 2024 17:49:45 -0800
User-agent: Mozilla Thunderbird

On 12/28/24 16:22, Jiaxun Yang wrote:
EXCP_SEMIHOSTING can be generated by m68k class CPU with
HALT instruction, but it is never handled properly and cause
guest fall into deadlock.

Handle it as what we've done to coldfire.

Fixes: f161e723fdfd ("target/m68k: Perform the semihosting test during 
translate")
Cc: qemu-stable@nongnu.org
Signed-off-by: Jiaxun Yang <jiaxun.yang@flygoat.com>
---
  target/m68k/op_helper.c | 3 +++
  1 file changed, 3 insertions(+)

diff --git a/target/m68k/op_helper.c b/target/m68k/op_helper.c
index 
15bad5dd46518c6e86b6273d4a2b26b3b6f991de..95b3d5cf052c6ffd515afdffd5465550ae3af455
 100644
--- a/target/m68k/op_helper.c
+++ b/target/m68k/op_helper.c
@@ -285,6 +285,9 @@ static void m68k_interrupt_all(CPUM68KState *env, int is_hw)
              /* Return from an exception.  */
              m68k_rte(env);
              return;
+        case EXCP_SEMIHOSTING:
+            do_m68k_semihosting(env, env->dregs[0]);
+            return;
          }

Oops.

Anyway, better to hoist both calls to do_interrupt_all.


r~



reply via email to

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