qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PULL 22/55] q35: ioapic: add support for emulated IOAP


From: Peter Xu
Subject: Re: [Qemu-devel] [PULL 22/55] q35: ioapic: add support for emulated IOAPIC IR
Date: Fri, 11 Nov 2016 18:17:05 -0500
User-agent: Mutt/1.5.24 (2015-08-30)

Hi, Emilio,

On Fri, Nov 11, 2016 at 12:18:04PM -0500, Emilio G. Cota wrote:
> On Tue, Jul 19, 2016 at 01:44:41 +0300, Michael S. Tsirkin wrote:
> > From: Peter Xu <address@hidden>
> > 
> > This patch translates all IOAPIC interrupts into MSI ones. One pseudo
> > ioapic address space is added to transfer the MSI message. By default,
> > it will be system memory address space. When IR is enabled, it will be
> > IOMMU address space.
> > 
> > Currently, only emulated IOAPIC is supported.
> > 
> > Idea suggested by Jan Kiszka and Rita Sinha in the following patch:
> > 
> > https://lists.gnu.org/archive/html/qemu-devel/2016-03/msg01933.html
> > 
> > Signed-off-by: Peter Xu <address@hidden>
> > Signed-off-by: Peter Xu <address@hidden>
> > ---
> >  include/hw/i386/apic-msidef.h     |  1 +
> >  include/hw/i386/ioapic_internal.h |  1 +
> >  include/hw/i386/pc.h              |  4 ++++
> >  hw/i386/intel_iommu.c             |  6 +++++-
> >  hw/i386/pc.c                      |  3 +++
> >  hw/intc/ioapic.c                  | 28 ++++++++++++++++++++++++----
> >  6 files changed, 38 insertions(+), 5 deletions(-)
> 
> This commit (which sits between 2.6 and 2.7) doesn't let me boot a
> buildroot-generated x86_64 image when QEMU is configured with
> --with-coroutine=gthread (it deadlocks on the BQL shortly after
> the framebuffer comes up.)
> 
> Is this something we should worry about? I see in the configure
> script that --with-coroutine=gthread "is not functional enough to run
> QEMU proper". My goal is to use thread sanitizer (tsan) to test
> mttcg for x86-64. Unfortunately, tsan blows with ucontext coroutines.

I tried to build QEMU using:

  ../configure --target-list=x86_64-softmmu --with-coroutine=gthread

with above commit. QEMU binary can boot well with either KVM or TCG
(with no QEMU paramter, so only BIOS is up). However if I provide a
image disk to the VM, KVM version worked, but TCG didn't.

Is this the same error you have encountered?

I also tried to test with exactly the same build parameters with the
previous commit of above (09cd058a2c, "intel_iommu: get rid of {0}
initializers"), it has the same problem (TCG version cannot boot guest
kernel if I provide a disk as parameter).

Do we still support gthread as coroutine backend? And to what extend
do we support it?

Thanks,

-- peterx



reply via email to

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