qemu-devel
[Top][All Lists]
Advanced

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

Re: [BUG] accel/tcg: cpu_exec_longjmp_cleanup: assertion failed: (cpu ==


From: Richard Henderson
Subject: Re: [BUG] accel/tcg: cpu_exec_longjmp_cleanup: assertion failed: (cpu == current_cpu)
Date: Wed, 29 Nov 2023 08:25:32 -0600
User-agent: Mozilla Thunderbird

On 11/25/23 07:08, Petr Cvek wrote:
ERROR:../accel/tcg/cpu-exec.c:546:cpu_exec_longjmp_cleanup: assertion failed: 
(cpu == current_cpu)
Bail out! ERROR:../accel/tcg/cpu-exec.c:546:cpu_exec_longjmp_cleanup: assertion 
failed: (cpu == current_cpu)
#

The code fails either with or without -singlestep, the command line:

/usr/bin/qemu-x86_64 -L /opt/x86_64 -strace -singlestep  /opt/x86_64/alarm.bin

Source code of QEMU 8.1.1 was modified with patch "[PATCH] qemu/timer: Don't use 
RDTSC on i486" [1],
with added few ioctls (not relevant) and cpu_exec_longjmp_cleanup() now prints 
current pointers of
cpu and current_cpu (line "0x48874a != 0x3c69e10").


If you try this again with 8.2-rc2, you should not see an assertion failure.
You should see instead

QEMU internal SIGILL {code=ILLOPC, addr=0x12345678}

which I think more accurately summarizes the situation of attempting RDTSC on hardware that does not support it.



r~



reply via email to

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