From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:33216) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VQIvP-00084C-M7 for qemu-devel@nongnu.org; Sun, 29 Sep 2013 11:28:52 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VQIvL-0006uD-74 for qemu-devel@nongnu.org; Sun, 29 Sep 2013 11:28:47 -0400 Received: from mx1.redhat.com ([209.132.183.28]:3882) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VQIvK-0006u2-To for qemu-devel@nongnu.org; Sun, 29 Sep 2013 11:28:43 -0400 Date: Sun, 29 Sep 2013 18:31:01 +0300 From: "Michael S. Tsirkin" Message-ID: <20130929153100.GB19493@redhat.com> References: <1380465657-22600-1-git-send-email-marcel.a@redhat.com> <20130929150613.GA19383@redhat.com> <1380468288.1952.9.camel@localhost.localdomain> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1380468288.1952.9.camel@localhost.localdomain> Subject: Re: [Qemu-devel] [PATCH 0/3] hw: set irq without selecting INTx pin List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Marcel Apfelbaum Cc: kwolf@redhat.com, peter.crosthwaite@xilinx.com, stefanha@redhat.com, sw@weilnetz.de, jasowang@redhat.com, qemu-devel@nongnu.org, dkoch@verizon.com, alex.williamson@redhat.com, kraxel@redhat.com, anthony@codemonkey.ws, pbonzini@redhat.com, afaerber@suse.de On Sun, Sep 29, 2013 at 06:24:48PM +0300, Marcel Apfelbaum wrote: > removed addresses: > av1474@comtv.ru > paul@codesourcery.com > > > On Sun, 2013-09-29 at 18:06 +0300, Michael S. Tsirkin wrote: > > On Sun, Sep 29, 2013 at 05:40:54PM +0300, Marcel Apfelbaum wrote: > > > Interrupt pin is selected and saved into PCI_INTERRUPT_PIN > > > register during device initialization. Devices should not call > > > directly qemu_set_irq and specify the INTx pin. > > > > > > Replaced the call to qemu_set_irq with a new wrapper > > > pci_set_irq which triggers the irq based on PCI_INTERRUPT_PIN. > > > > Looks good overall. > > As a next step, can we make pci_set_irq non-inline and make > > it call pci_irq_handler directly, and get rid of the irq field? > OK, I hope it will not affect performance. > > Thanks, > Marcel Avoiding call through a pointer is likely to help performance. > > > > This way we know no one is using it directly ... > > > > > Marcel Apfelbaum (3): > > > hw/pci: set irq without selecting INTx pin > > > hw/pci-bridge: set PCI_INTERRUPT_PIN register before shpc init > > > hw: assert/deassert interrupts using pci_set_irq wrapper > > > > > > hw/audio/ac97.c | 4 ++-- > > > hw/audio/es1370.c | 2 +- > > > hw/audio/intel-hda.c | 2 +- > > > hw/char/serial-pci.c | 2 +- > > > hw/char/tpci200.c | 4 ++-- > > > hw/display/qxl.c | 2 +- > > > hw/ide/cmd646.c | 2 +- > > > hw/isa/vt82c686.c | 2 +- > > > hw/misc/ivshmem.c | 2 +- > > > hw/net/e1000.c | 2 +- > > > hw/net/rtl8139.c | 2 +- > > > hw/pci-bridge/pci_bridge_dev.c | 2 +- > > > hw/pci/pci.c | 6 +++--- > > > hw/pci/shpc.c | 2 +- > > > hw/scsi/lsi53c895a.c | 2 +- > > > hw/scsi/vmw_pvscsi.c | 2 +- > > > hw/virtio/virtio-pci.c | 4 ++-- > > > include/hw/pci/pci.h | 7 +++++++ > > > 18 files changed, 29 insertions(+), 22 deletions(-) > > > > > > -- > > > 1.8.3.1 > >