qemu-devel
[Top][All Lists]
Advanced

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

Re: [PULL 00/20] pc,virtio,pci: fixes, features


From: Michael S. Tsirkin
Subject: Re: [PULL 00/20] pc,virtio,pci: fixes, features
Date: Tue, 23 Mar 2021 10:13:58 -0400

On Tue, Mar 23, 2021 at 10:50:05AM +0000, Peter Maydell wrote:
> On Mon, 22 Mar 2021 at 22:56, Michael S. Tsirkin <mst@redhat.com> wrote:
> > On Mon, Mar 22, 2021 at 06:46:06PM +0000, Peter Maydell wrote:
> > > This happens because pm_update_sci() calls pci_irq_handler(),
> > > which calls pci_intx(pci_dev), which returns -1, which is not
> > > a valid interrupt number to call pci_irq_handler() with.
> > >
> > > Q: given that pci_irq_handler() says it must only be called with
> > > an irqnum in [0..3], shouldn't pci_set_irq() be a bit more
> > > cautious than to pull a byte directly out of PCI_INTERRUPT_PIN
> > > and assume it's valid? (Is this guest-writable, or is it read-only?)
> >
> > It's read-only.
> 
> Ah, so if a device model (a) doesn't set the value to a correct
> interrupt number and then (b) triggers an interrupt for itself,
> then that's a device model bug ? It might be worth assert()ing
> that the irqnum is valid, just to catch this kind of bug a bit
> more obviously.
> 
> thanks
> -- PMM

Sure, we can do this. Patch?

-- 
MST




reply via email to

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