[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH V7 15/16] virtio-pci: increase the maximum numbe
From: |
Eduardo Habkost |
Subject: |
Re: [Qemu-devel] [PATCH V7 15/16] virtio-pci: increase the maximum number of virtqueues to 513 |
Date: |
Thu, 14 May 2015 15:54:39 -0300 |
User-agent: |
Mutt/1.5.23 (2014-03-12) |
On Thu, Apr 23, 2015 at 02:21:48PM +0800, Jason Wang wrote:
> This patch increases the maximum number of virtqueues for pci from 64
> to 513. This will allow booting a virtio-net-pci device with 256 queue
> pairs on recent Linux host (which supports up to 256 tuntap queue pairs).
>
> To keep migration compatibility, 64 was kept for legacy machine
> types. This is because qemu in fact allows guest to probe the limit of
> virtqueues through trying to set queue_sel. So for legacy machine
> type, we should make sure setting queue_sel to more than 63 won't
> make effect.
>
> Cc: Paolo Bonzini <address@hidden>
> Cc: Richard Henderson <address@hidden>
> Cc: Michael S. Tsirkin <address@hidden>
> Cc: Alexander Graf <address@hidden>
> Cc: address@hidden
> Signed-off-by: Jason Wang <address@hidden>
> ---
> hw/i386/pc_piix.c | 5 +++++
> hw/i386/pc_q35.c | 5 +++++
> hw/ppc/spapr.c | 5 +++++
> hw/virtio/virtio-pci.c | 6 +++++-
> 4 files changed, 20 insertions(+), 1 deletion(-)
>
[...]
> static void pc_compat_2_3(MachineState *machine)
> {
> + ObjectClass *klass = object_class_by_name("virtio-pci-bus");
> + VirtioBusClass *k = VIRTIO_BUS_CLASS(klass);
> +
> + k->queue_max = 64;
> }
[...]
> static void pc_compat_2_3(MachineState *machine)
> {
> + ObjectClass *klass = object_class_by_name("virtio-pci-bus");
> + VirtioBusClass *k = VIRTIO_BUS_CLASS(klass);
> +
> + k->queue_max = 64;
> }
[...]
> static void spapr_compat_2_3(Object *obj)
> {
> + ObjectClass *klass = object_class_by_name("virtio-pci-bus");
> + VirtioBusClass *k = VIRTIO_BUS_CLASS(klass);
> +
> + k->queue_max = 64;
> }
If you use compat_props for this, you will just need to add it to
HW_COMPAT_2_3 without duplicating the same compat code on all machines.
--
Eduardo