On Mon, Dec 16, 2019 at 09:50:13AM +0100, Stefano Garzarella wrote: > On Fri, Dec 13, 2019 at 09:24:03AM -0500, Michael S. Tsirkin wrote: > > Some guests read back queue size after writing it. > > Update the size immediatly upon write otherwise > > they get confused. > > > > Signed-off-by: Michael S. Tsirkin <m...@redhat.com> > > --- > > hw/virtio/virtio-pci.c | 2 ++ > > 1 file changed, 2 insertions(+) > > Reviewed-by: Stefano Garzarella <sgarz...@redhat.com> > > > Just a question, should we do the same in virtio-mmio? > > Maybe doing virtio_queue_set_num() in any case (legacy and non-legacy) > during VIRTIO_MMIO_QUEUE_NUM writing. > > Thanks, > Stefano
I guess it makes sense ... > > > > diff --git a/hw/virtio/virtio-pci.c b/hw/virtio/virtio-pci.c > > index c6b47a9c73..e5c759e19e 100644 > > --- a/hw/virtio/virtio-pci.c > > +++ b/hw/virtio/virtio-pci.c > > @@ -1256,6 +1256,8 @@ static void virtio_pci_common_write(void *opaque, > > hwaddr addr, > > break; > > case VIRTIO_PCI_COMMON_Q_SIZE: > > proxy->vqs[vdev->queue_sel].num = val; > > + virtio_queue_set_num(vdev, vdev->queue_sel, > > + proxy->vqs[vdev->queue_sel].num); > > break; > > case VIRTIO_PCI_COMMON_Q_MSIX: > > msix_vector_unuse(&proxy->pci_dev, > > -- > > MST > > > > > > --