qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 0/5] Support more virtio queues


From: Stefan Hajnoczi
Subject: Re: [Qemu-devel] [PATCH 0/5] Support more virtio queues
Date: Fri, 6 Feb 2015 16:26:26 +0000
User-agent: Mutt/1.5.23 (2014-03-12)

On Fri, Feb 06, 2015 at 03:54:08PM +0800, Jason Wang wrote:
> We current limit the max virtio queues to 64. This is not sufficient
> to support some multiqueue deivces (e.g recent Linux support up to 256
> tap queues). So this series try to let virtio to support more queues.
> 
> No much works needs to be done except:
> 
> - Patch 1 renames VIRTIO_PCI_QUEUE_MAX to a more generic name:
>   VIRTIO_QUEUE_MAX
> - Patch 2 simply increase the the limitation to 513 (256 queue pairs)
> - Patch 3 fixes a bug in virtio_del_queue()
> - Patch 4 tries to remove the hard coded MSI-X bar size (4096) and allow up to
>   2048 MSI-X entries.
> - Patch 5 add a boolean property to let the virtio-net can calculate
>   the MSI-X bar size based on the number of MSI-X vectors and keep
>   migration compability with legacy version whose bar size is 4096.
> 
> With this patch, we can support up to 256 queues.Since x86 can only
> allow about 240 interrupt vectors for MSI-X, current Linux driver can
> only have about 80 queue pairs has their private MSI-X interrupt
> vectors. With sharing IRQ with queue pairs (RFC posted in
> https://lkml.org/lkml/2014/12/25/169), Linux driver can have up
> to about 186 queue pairs has their private MSI-X interrupt vectors.

Worth mentioning that the change to VIRTIO_QUEUE_MAX is safe from a live
migration perspective:

Old QEMUs will not accept migration from new QEMUs launched with >64
queues:

  Invalid number of PCI queues: 0x41

Other than that, live migration works fine.

Stefan

Attachment: pgpAv8EixfzqO.pgp
Description: PGP signature


reply via email to

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