Hi,
Am 2018-05-09 13:51, schrieb Paolo Bonzini:
On 08/05/2018 03:49, Philippe Mathieu-Daudé wrote:
#2 0x00007fe17d5eefa5 in g_assertion_message () at
/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3 0x00007fe17d5ef00a in g_assertion_message_expr () at
/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#4 0x0000559d92ace7d5 in tcg_handle_interrupt (cpu=0x559d93aa35d0,
mask=2) at qemu/accel/tcg/tcg-all.c:42
#5 0x0000559d92af1b3c in cpu_interrupt (cpu=0x559d93aa35d0, mask=2)
at
qemu/include/qom/cpu.h:848
#6 0x0000559d92af2516 in cpu_irq_handler (opaque=0x559d93aa35d0,
irq=0,
level=1) at qemu/hw/lm32/milkymist.c:59
#7 0x0000559d92b6639d in qemu_set_irq (irq=0x559d93a0f250, level=1)
at
qemu/hw/core/irq.c:45
#8 0x0000559d92b76d5f in qemu_irq_raise (irq=0x559d93a0f250) at
qemu/include/hw/irq.h:16
#9 0x0000559d92b7723e in update_irq (s=0x559d93adba00) at
qemu/hw/intc/lm32_pic.c:51
#10 0x0000559d92b7738e in lm32_pic_set_im (d=0x559d93adba00, im=1) at
qemu/hw/intc/lm32_pic.c:82
#11 0x0000559d92af72e0 in helper_wcsr_im (env=0x559d93aab870, im=1) at
qemu/target/lm32/op_helper.c:105
#12 0x00007fe155e250ca in code_gen_buffer ()
#13 0x0000559d92adec8e in cpu_tb_exec (cpu=0x559d93aa35d0,
itb=0x7fe155e24fc0 <code_gen_buffer+49043>)
All these calls into lm32_pic.c need to take the BQL. They are all
wrong, but this one was unlucky (or lucky) enough to be caught.
Paolo
my patch [1] from the beginning of this year just take the lock in
op_helper.c. The only other places are the gdbstub.c and
lm32_cpu_dump_state(). So these are still missing, right?
-michael
[1] http://lists.gnu.org/archive/html/qemu-devel/2018-01/msg01598.html