From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=35194 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PeqDF-0003x9-JU for qemu-devel@nongnu.org; Mon, 17 Jan 2011 09:37:42 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1PeqDE-0001KI-BY for qemu-devel@nongnu.org; Mon, 17 Jan 2011 09:37:41 -0500 Received: from thoth.sbs.de ([192.35.17.2]:20871) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1PeqDD-0001HT-Ul for qemu-devel@nongnu.org; Mon, 17 Jan 2011 09:37:40 -0500 Message-ID: <4D34542D.7080301@siemens.com> Date: Mon, 17 Jan 2011 15:37:33 +0100 From: Jan Kiszka MIME-Version: 1.0 References: <1292879604-22268-1-git-send-email-agraf@suse.de> <1292879604-22268-9-git-send-email-agraf@suse.de> In-Reply-To: <1292879604-22268-9-git-send-email-agraf@suse.de> Content-Type: text/plain; charset=ISO-8859-15 Content-Transfer-Encoding: 7bit Subject: [Qemu-devel] Re: [PATCH 8/8] ahci: fix !msi interrupts List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Alexander Graf Cc: Kevin Wolf , Joerg Roedel , Sebastian Herbszt , qemu-devel Developers , Gerd Hoffmann On 2010-12-20 22:13, Alexander Graf wrote: > When not using MSI, receiving an interrupt while the interrupt line is active > pulses the interrupt line. Without this, guests don't realize that a new > interrupt occured. This doesn't look OK. The device model should look at the currently used mode and switch between edge and level triggering accordingly. As it appears like this is what it already does, this change may just paper over the real issue. Jan > > Signed-off-by: Alexander Graf > --- > hw/ide/ahci.c | 3 +-- > 1 files changed, 1 insertions(+), 2 deletions(-) > > diff --git a/hw/ide/ahci.c b/hw/ide/ahci.c > index 97aef68..4c920da 100644 > --- a/hw/ide/ahci.c > +++ b/hw/ide/ahci.c > @@ -153,11 +153,10 @@ static void ahci_check_irq(AHCIState *s) > } > } > > + ahci_irq_lower(s, NULL); > if (s->control_regs.irqstatus && > (s->control_regs.ghc & HOST_CTL_IRQ_EN)) { > ahci_irq_raise(s, NULL); > - } else { > - ahci_irq_lower(s, NULL); > } > } > -- Siemens AG, Corporate Technology, CT T DE IT 1 Corporate Competence Center Embedded Linux