On 7/28/26 22:45, Michael S. Tsirkin wrote:
On Tue, Jul 28, 2026 at 11:40:24AM +0300, Michael Tokarev wrote:

...
diff --git a/hw/core/machine.c b/hw/core/machine.c
index 805148678d..73b4d82b4a 100644
--- a/hw/core/machine.c
+++ b/hw/core/machine.c
@@ -41,6 +41,7 @@
   #include "hw/arm/smmuv3.h"
   GlobalProperty hw_compat_11_0[] = {
+    { "virtio-mmio", VIRTIO_QUEUE_SIZE_OVERRIDE, "1024" },

..because it is adding a new field into the migration stream,
which is a problem for stable series.


this is compat not a migration stream, right?

Aha, yes, I was a bit tired today.

For stable, the value needs to be 1024 for all types.

So this whole change, for older versions, becomes just:

--- a/hw/virtio/virtio.c
+++ b/hw/virtio/virtio.c
@@ -2572,6 +2572,8 @@ VirtQueue *virtio_add_queue(VirtIODevice *vdev, int 
queue_size,
     if (i == VIRTIO_QUEUE_MAX || queue_size > VIRTQUEUE_MAX_SIZE)
         abort();

+    queue_size = VIRTQUEUE_MAX_SIZE; /* fixed properly in 11.1. */
+
     vdev->vq[i].vring.num = queue_size;
     vdev->vq[i].vring.num_default = queue_size;
     vdev->vq[i].vring.align = VIRTIO_PCI_VRING_ALIGN;


so we override supplied size just like when
x-override-queue-size is set for compat-11.0 or earlier.

Got it.

Now, the fun continues - this is the first time in qemu history
when a bigger change reduces in stable series into such a one-liner :)

Thanks,

/mjt

Reply via email to