qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] Re: [PATCH 07/14] msi: implemented msi.


From: Isaku Yamahata
Subject: [Qemu-devel] Re: [PATCH 07/14] msi: implemented msi.
Date: Wed, 8 Sep 2010 16:43:27 +0900
User-agent: Mutt/1.5.19 (2009-01-05)

Thank you for through review.

On Mon, Sep 06, 2010 at 12:44:16PM +0300, Michael S. Tsirkin wrote:
> > +        uint32_t pending =
> > +            pci_get_long(dev->config + msi_pending_reg(dev, is64bit));
> > +        uint8_t vector;
> > +
> > +        /* deliver pending interrupts which are unmasked */
> > +        for (vector = 0; vector < nr_vector; ++vector) {
> > +            if (msi_is_masked(dev, vector) || !msi_test_bit(pending, 
> > vector)) {
> 
> I am confused. This is called after mask is updated, right?
> So msi_is_masked means vector was masked, not unmasked?
> I think the logic is reversed here.

I suppose you were missing the following continue.


> > +                continue;
                     ^^^^^^^^^ Here

> > +            }
> > +
> > +            msi_clear_bit(&pending, vector);
> > +            pci_set_long(dev->config + msi_pending_reg(dev, is64bit), 
> > pending);
> > +            msi_notify(dev, vector);
> > +        }
> > +    }
> > +}
> > +
> > +uint8_t msi_nr_allocated_vector(const PCIDevice *dev)

-- 
yamahata



reply via email to

[Prev in Thread] Current Thread [Next in Thread]