From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:46480) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bFXBz-0005os-CN for qemu-devel@nongnu.org; Tue, 21 Jun 2016 21:43:00 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bFXBu-0001yw-Dw for qemu-devel@nongnu.org; Tue, 21 Jun 2016 21:42:58 -0400 Received: from szxga02-in.huawei.com ([119.145.14.65]:27737) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bFXBt-0001ud-RQ for qemu-devel@nongnu.org; Tue, 21 Jun 2016 21:42:54 -0400 Message-ID: <5769ED05.2050409@huawei.com> Date: Wed, 22 Jun 2016 09:42:29 +0800 From: Shannon Zhao MIME-Version: 1.0 References: <1465915112-29272-1-git-send-email-peter.maydell@linaro.org> <5761178F.60004@huawei.com> <20160621144555.zsvsukja7wrxxkvi@hawk.localdomain> <20160621151202.hbwpqyvmbnno3yfy@hawk.localdomain> <20160621171557.uq6ellpqom43kanz@hawk.localdomain> <20160621171813.hbzbzx3ojys2tkts@hawk.localdomain> <5c504e1b-f311-272a-724f-2182349c3cd1@redhat.com> In-Reply-To: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH v3 00/20] GICv3 emulation List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Maydell , Laszlo Ersek Cc: Andrew Jones , Patch Tracking , Shlomo Pongratz , Shlomo Pongratz , Pavel Fedin , QEMU Developers , Shannon Zhao , Christoffer Dall , Ard Biesheuvel On 2016/6/22 3:53, Peter Maydell wrote: > On 21 June 2016 at 20:45, Laszlo Ersek wrote: >> > On 06/21/16 19:21, Peter Maydell wrote: >>> >> and add a note I forgot to mention: my primary hypothesis is that >>> >> the problem here is "guest does not write to the GICD_IGROUPR and >>> >> GICR_IGROUPR registers to program the interrupts it's using as >>> >> group 1, but still expects to get IRQs rather than FIQs". >> > >> > ... and it (or whatever else is the root cause) seems to manifest in >> > either the Stall() UEFI boot service, or in UEFI timer events. (This >> > seems to follow from the last debug log entry from Shannon: >> > >> > [Bds]BdsWait(3)..Zzzz... >> > ) >> > >> > ... Just to make it clear: does it reproduce with KVM? Or is that >> > untested perhaps (due to lack of GICv3 hardware e.g.)? > Upthread Shannon said it worked with KVM enabled. Note that > KVM's GICv3 emulation is incorrect in that it does not support > interrupt groups, so all interrupt groups are Group 1 and > generate IRQ even if the guest doesn't do anything to > configure them. It does work with KVM enabled. It also works with UEFI and the upstream linux kernel while it doesn't work with UEFI and a FreeBSD guest since the FreeBSD doesn't correctly set the IGROUPR, I think. I can't find the commit ID of the UEFI I use but I used the upsream codes of June 15. Andrew, I suggest you use the QEMU mainline which includes the GICv3 emulation and the guest kernel with the commit 7c9b973061. Thanks, -- Shannon