From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:42029) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RXy2Y-0000Uz-Hj for qemu-devel@nongnu.org; Tue, 06 Dec 2011 11:38:53 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RXy2S-0008HN-Go for qemu-devel@nongnu.org; Tue, 06 Dec 2011 11:38:46 -0500 Received: from thoth.sbs.de ([192.35.17.2]:30296) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RXy2R-0008Gp-W6 for qemu-devel@nongnu.org; Tue, 06 Dec 2011 11:38:40 -0500 Message-ID: <4EDE450B.6090801@siemens.com> Date: Tue, 06 Dec 2011 17:38:35 +0100 From: Jan Kiszka MIME-Version: 1.0 References: <4EDC8D06.20308@msgid.tls.msk.ru> <4EDCC6FE.8040702@redhat.com> <4EDD2763.8010808@msgid.tls.msk.ru> <4EDDEF26.9030403@redhat.com> <4EDDF659.6040701@msgid.tls.msk.ru> <20111206122752.GA31385@redhat.com> <4EDE2AA0.7090001@msgid.tls.msk.ru> <4EDE42EB.2020101@msgid.tls.msk.ru> In-Reply-To: <4EDE42EB.2020101@msgid.tls.msk.ru> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] winXP "Standard PC" HAL and qemu-kvm >= 0.15 List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Michael Tokarev Cc: "qemu-devel@nongnu.org" , Isaku Yamahata , Avi Kivity , KVM list , "Michael S. Tsirkin" On 2011-12-06 17:29, Michael Tokarev wrote: > [Added Jan Kiszka to Cc] > > On 06.12.2011 18:45, Michael Tokarev wrote: > [complete thread: http://thread.gmane.org/gmane.comp.emulators.kvm.devel/82705] > >> More data points (all against qemu-kvm-0.15.0). >> >> First, as Avi pointed out, this patch references PIC which is >> used by standardPC HAL and not used by ACPI HAL. So it might >> be something to think about, at least. >> >> Now, so far, all deviecs which are on IRQ11 are affected. When >> enabling USB and NIC, they both gets assigned to IRQ11 and both >> does not work. When enabling just one of them (either), only >> that device (which gets assigned to IRQ11) does not work. All >> other devices apparently works fine (including PS/2 Mouse on >> IRQ12). >> >> When using just one of NIC/USB, all IRQs in the guest becomes >> single-device, so IRQ sharing isn't a problem. >> >> I wasn't able to force the guest to use IRQ10 so far (to verify). >> >> Also, when booted with -no-kvm-irqchip, guest Just Works, including >> USB and NIC sharing IRQ11. >> >> While on IRC there was one more person who suffered from the same >> issue, now with Win2003. He was able to solve his guest issue by >> changing StandardPC HAL into ACPI HAL, using a "hackish" way (by >> replacing C:\Windows\System32\HAL.DLL into HALACPI.DLL as found >> on win2k3 installation CDROM). I wasn't able to replace stdhal >> into anything else on my test winXP machine - after changing HAL.DLL, >> on next reboot my guest complains about being unable to find boot >> device (BSOD STOP 0x7b) - despite using stdIDE and mergeide. I'll >> investigate the guest side further later. >> >> When in this funky mode with non-working IRQ11 (when a NIC (rtl8139) >> is assigned to it), winXP guest shows huge delays when trying to >> open "My Computer" properties - it freezes for 30..40 seconds after >> hitting "Properties" in the context menu. I can only guess it is >> trying to do something with the IRQs at that time, which does not >> work. I wasn't able to (quickly) find a tool for winXP to show >> IRQ statistics. >> >> That's about all the info so far which I know about this issue. > > > It appears there are two issues here, one is fixed by > 09de0f469c3c2a277c7874f6c60992c8b94719a9 and is 32bit-only, and > another bisect leads to this commit: > > commit 59539c913383fdd3350681301b44f02fa7ee2757 > Author: Jan Kiszka > Date: Mon Jun 27 12:22:28 2011 +0200 > > qemu-kvm: Fix in-kernel PIC reset > > Lacking sync of the user space state to the kernel after system reset > left the PIC behind in an undefined state. This broke IRQ delivery in > some scenarios, e.g. when resetting while in the BIOS. > > Signed-off-by: Jan Kiszka > Signed-off-by: Avi Kivity > > > Reverting this single commit on top of 0.15.0 fixes the guest issues > described in this thread. > > This commit is qemu-kvm-specific (and indeed, the issue only affects > qemu-kvm). > > Note also that as per above, -no-kvm-irqchip fixes the guest issue too. > > Anything wrong with this patch? I tend to say "no". It may just reveals some issue elsewhere. To cross-check: Does this series [1] expose the same issue with vanilla QEMU when enabling that in-kernel irqchip version? Jan [1] http://thread.gmane.org/gmane.comp.emulators.kvm.devel/82871 -- Siemens AG, Corporate Technology, CT T DE IT 1 Corporate Competence Center Embedded Linux