[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] intermittent make check failure: "tcg_handle_interrupt:
From: |
Mark Cave-Ayland |
Subject: |
Re: [Qemu-devel] intermittent make check failure: "tcg_handle_interrupt: assertion failed: (qemu_mutex_iothread_locked())" |
Date: |
Wed, 1 Mar 2017 16:19:34 +0000 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Icedove/45.6.0 |
On 01/03/17 15:19, Alex Bennée wrote:
> Actually looking at where cpu_check_irq is I've pushed the BQL wraps
> higher up:
>
>
> https://github.com/stsquad/qemu/commit/f52e01bf4d3415ce4fad54cbb491f6c30a8e1903
>
> The reasoning is HW emulation code can expect to be run under the BQL.
> Anything triggered by MMIO for example will automatically have the lock.
> The problem is helpers which trigger hardware actions (ARM has ARM_CP_IO
> for this). We talk about this in the design document:
>
>
> http://git.qemu-project.org/?p=qemu.git;a=blob;f=docs/multi-thread-tcg.txt;h=a99b4564c6258576acfa141f51f4b80131969519;hb=HEAD#l201
>
>> I ran out of time yesterday to run through all my SPARC64 tests, however
>> if this is the case then the issue will definitely appear in
>> qemu-system-sparc64 which seems to be supported by people seeing
>> intermittent failures in prom-env-test.
>
> So I made the change to both sparc and sparc64 in the above commit.
>
> I haven't managed to run into the intermittent trigger yet. How do I run
> the test directly?
>
> make tests/prom-env-test
>
> Just makes the test case and
>
> ./tests/prom-env-test
> **
> ERROR:tests/libqtest.c:589:qtest_get_arch: assertion failed: (qemu != NULL)
> Aborted (core dumped)
Yeah, I couldn't work out how to run a single test either so ended up
cycling through a complete set of "make check" runs in order to try and
provoke the assert(), and despite all this I was still unable to
reproduce the "make check" error locally.
Fortunately with the debian-40r4a-sparc-netinst.iso I was able to
reproduce it fairly easily under qemu-system-sparc so I'd suggest that
you go that route. If you can't find anywhere that hosts that particular
image for testing, do contact me off-list and I'll temporarily upload it
somewhere for you.
ATB,
Mark.
Re: [Qemu-devel] intermittent make check failure: "tcg_handle_interrupt: assertion failed: (qemu_mutex_iothread_locked())", Peter Maydell, 2017/03/01
Re: [Qemu-devel] s390x failure: "tcg_handle_interrupt: assertion failed: (qemu_mutex_iothread_locked())", Thomas Huth, 2017/03/01
Re: [Qemu-devel] xtensa failure: "tcg_handle_interrupt: assertion failed: (qemu_mutex_iothread_locked())", Thomas Huth, 2017/03/01
Re: [Qemu-devel] mips failure: "tcg_handle_interrupt: assertion failed: (qemu_mutex_iothread_locked())", Yongbok Kim, 2017/03/02