From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60863) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1c5L4T-0004Wh-06 for qemu-devel@nongnu.org; Fri, 11 Nov 2016 18:17:22 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1c5L4P-0007fh-RS for qemu-devel@nongnu.org; Fri, 11 Nov 2016 18:17:20 -0500 Received: from mx1.redhat.com ([209.132.183.28]:59030) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1c5L4P-0007fF-M0 for qemu-devel@nongnu.org; Fri, 11 Nov 2016 18:17:17 -0500 Date: Fri, 11 Nov 2016 18:17:05 -0500 From: Peter Xu Message-ID: <20161111231705.GA10295@pxdev.xzpeter.org> References: <1468881010-27229-1-git-send-email-mst@redhat.com> <20160719014441-mutt-send-email-mst@redhat.com> <20161111171804.GA17480@flamenco> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20161111171804.GA17480@flamenco> Subject: Re: [Qemu-devel] [PULL 22/55] q35: ioapic: add support for emulated IOAPIC IR List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Emilio G. Cota" Cc: "Michael S. Tsirkin" , qemu-devel@nongnu.org, Peter Maydell , Richard Henderson , Eduardo Habkost , Paolo Bonzini , Alex =?utf-8?B?QmVubu+/vWU=?= 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 > > > > 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 > > Signed-off-by: Peter Xu > > --- > > 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