[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] Re: [PATCH 4/4] pci: interrupt disable bit support
From: |
Michael S. Tsirkin |
Subject: |
[Qemu-devel] Re: [PATCH 4/4] pci: interrupt disable bit support |
Date: |
Thu, 26 Nov 2009 15:21:52 +0200 |
User-agent: |
Mutt/1.5.19 (2009-01-05) |
On Thu, Nov 26, 2009 at 12:04:51PM +0900, Isaku Yamahata wrote:
> On Wed, Nov 25, 2009 at 06:59:06PM +0200, Michael S. Tsirkin wrote:
> > interrupt disable bit is mandatory in PCI spec,
> > so we must implement it to be spec compliant.
> >
> > Signed-off-by: Michael S. Tsirkin <address@hidden>
> > ---
> > hw/pci.c | 57 ++++++++++++++++++++++++++++++++++++++++-----------------
> > hw/pci.h | 4 ++++
> > 2 files changed, 44 insertions(+), 17 deletions(-)
> >
> > diff --git a/hw/pci.c b/hw/pci.c
> > index 844664b..3daae46 100644
> > --- a/hw/pci.c
> > +++ b/hw/pci.c
> > @@ -114,12 +114,43 @@ static void pci_update_irq_status(PCIDevice *dev)
> > }
> > }
> >
> > +static void pci_change_irq_level(PCIDevice *pci_dev, int irq_num, int
> > change)
> > +{
> > + PCIBus *bus;
> > + for (;;) {
> > + bus = pci_dev->bus;
> > + irq_num = bus->map_irq(pci_dev, irq_num);
> > + if (bus->set_irq)
> > + break;
> > + pci_dev = bus->parent_dev;
> > + }
> > + bus->irq_count[irq_num] += change;
> > + bus->set_irq(bus->irq_opaque, irq_num, bus->irq_count[irq_num] != 0);
>
> Let's use ! instead of != 0 for consistency.
By the way, this would have to be !!, not !.
So not sure there's much consistency to be gained:
!= appears in pci.c more times than !!.
--
MST