[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 3/3] virtio: set ISR on dataplane notifications
From: |
Michael S. Tsirkin |
Subject: |
Re: [Qemu-devel] [PATCH 3/3] virtio: set ISR on dataplane notifications |
Date: |
Tue, 15 Nov 2016 19:38:30 +0200 |
On Tue, Nov 15, 2016 at 05:22:49PM +0100, Paolo Bonzini wrote:
>
>
> On 15/11/2016 16:44, Michael S. Tsirkin wrote:
> > True. We could drop it from non-data plane, it's just that we never had
> > a reason to. vhost in kernel does not set ISR in MSI mode, either.
>
> Yeah, I suspected that. But dropping it from non-dataplane would break
> Windows hibernation and crashdump, just like it did for Alex.
I guess it's just a question of updating the drivers,
isn't it? To me, hibernation/crashdump doesn't sound important
enough to warrant work-arounds, but if you feel otherwise,
I'm fine with doing this work-around for dataplane.
> > What we have in spec is:
> >
> > The device MUST set the Device Configuration Interrupt bit in ISR status
> > before sending a device configu-
> > ration change notification to the driver.
> > If MSI-X capability is disabled, the device MUST set the Queue Interrupt
> > bit in ISR status before sending a
> > virtqueue notification to the driver.
> > If MSI-X capability is disabled, the device MUST set the Interrupt
> > Status bit in the PCI Status register in the
> > PCI Configuration Header of the device to the logical OR of all bits in
> > ISR status of the device. The device
> > then asserts/deasserts INT#x interrupts unless masked according to
> > standard PCI rules [PCI].
> > The device MUST reset ISR status to 0 on driver read.
> >
> >
> >
> >
> > If MSI-X capability is enabled, the driver SHOULD NOT access ISR status
> > upon detecting a Queue Interrupt.
> >
> >
> >
> > It can be clearer, but IMHO it's reasonably clear that devices
> > do not have to set this bit in MSI mode.
>
> Yes, it is. We can just document it in the release notes, but then the
> fix is not particularly intrusive.
>
> Paolo
It has a slight performance cost but it's not too bad.
I'd rather document it in a code comment though.
Explain the motivation and which driver versions are affected.
--
MST
- [Qemu-devel] [PATCH for-2.8 0/3] virtio fixes, Paolo Bonzini, 2016/11/15
- [Qemu-devel] [PATCH 3/3] virtio: set ISR on dataplane notifications, Paolo Bonzini, 2016/11/15
- Re: [Qemu-devel] [PATCH 3/3] virtio: set ISR on dataplane notifications, Michael S. Tsirkin, 2016/11/15
- Re: [Qemu-devel] [PATCH 3/3] virtio: set ISR on dataplane notifications, Paolo Bonzini, 2016/11/15
- Re: [Qemu-devel] [PATCH 3/3] virtio: set ISR on dataplane notifications, Michael S. Tsirkin, 2016/11/15
- Re: [Qemu-devel] [PATCH 3/3] virtio: set ISR on dataplane notifications, Paolo Bonzini, 2016/11/15
- Re: [Qemu-devel] [PATCH 3/3] virtio: set ISR on dataplane notifications,
Michael S. Tsirkin <=
- Re: [Qemu-devel] [PATCH 3/3] virtio: set ISR on dataplane notifications, Alex Williamson, 2016/11/15
- Re: [Qemu-devel] [PATCH 3/3] virtio: set ISR on dataplane notifications, Michael S. Tsirkin, 2016/11/15
- Re: [Qemu-devel] [PATCH 3/3] virtio: set ISR on dataplane notifications, Alex Williamson, 2016/11/15
- Re: [Qemu-devel] [PATCH 3/3] virtio: set ISR on dataplane notifications, Michael S. Tsirkin, 2016/11/15
- Re: [Qemu-devel] [PATCH 3/3] virtio: set ISR on dataplane notifications, Alex Williamson, 2016/11/15
[Qemu-devel] [PATCH 2/3] virtio: access ISR atomically, Paolo Bonzini, 2016/11/15
[Qemu-devel] [PATCH 1/3] virtio: introduce grab/release_ioeventfd to fix vhost, Paolo Bonzini, 2016/11/15