On Mon, Jul 13, 2015 at 01:24:15PM +0200, Paolo Bonzini wrote:
> 
> 
> On 13/07/2015 13:21, Michael S. Tsirkin wrote:
> > > Yes, this is already how virtio-scsi multiqueue is implemented.  The
> > > speedup is noticeable.  However, for virtio-blk there is a huge
> > > consumption of interrupt vectors in the guest, so it doesn't scale to
> > > multiple disks as well as virtio-scsi.
> >
> > Could you elaborate please?  interrupt vector usage is generally
> > up to the guest, so whatever the issue is might be fixable by driver
> > changes alone.
> 
> Yes, but in practice neither Linux nor Windows (AFAIK) are able to share
> the same vector across multiple MSIs.
> 
> Paolo

AFAIK Linux can do this of you pass in IRQF_SHARED.
We just never saw a need to do this before.
Sharing between devices might also work, I think
Amos Kong made it work under qemu, though this relied
on reading ISR when in MSI mode, which is only allowed
in virtio 1 mode.

virtio spec also lets drivers control the mapping from
VQs to MSI vectors. That's portable across OSes.
That one is actually used, at least the Linux drivers support
a mode where all VQs share a single vector.

-- 
MST

Reply via email to