diff options
author | Akihiko Odaki <akihiko.odaki@daynix.com> | 2024-03-27 11:05:09 +0900 |
---|---|---|
committer | Jason Wang <jasowang@redhat.com> | 2024-03-29 14:57:59 +0800 |
commit | 1c188fc8cbffc5f05cc616cab4e1372fb6e6f11f (patch) | |
tree | 82a2992eaeb1ea15587dd6ed1f98877975bc1b4e /hw/net | |
parent | 5012e522aca161be5c141596c66e5cc6082538a9 (diff) | |
download | qemu-1c188fc8cbffc5f05cc616cab4e1372fb6e6f11f.zip qemu-1c188fc8cbffc5f05cc616cab4e1372fb6e6f11f.tar.gz qemu-1c188fc8cbffc5f05cc616cab4e1372fb6e6f11f.tar.bz2 |
virtio-net: Fix vhost virtqueue notifiers for RSS
virtio_net_guest_notifier_pending() and virtio_net_guest_notifier_mask()
checked VIRTIO_NET_F_MQ to know there are multiple queues, but
VIRTIO_NET_F_RSS also enables multiple queues. Refer to n->multiqueue,
which is set to true either of VIRTIO_NET_F_MQ or VIRTIO_NET_F_RSS is
enabled.
Fixes: 68b0a6395f36 ("virtio-net: align ctrl_vq index for non-mq guest for vhost_vdpa")
Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
Diffstat (limited to 'hw/net')
-rw-r--r-- | hw/net/virtio-net.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index 9959f19..a6ff000 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -3426,7 +3426,7 @@ static bool virtio_net_guest_notifier_pending(VirtIODevice *vdev, int idx) VirtIONet *n = VIRTIO_NET(vdev); NetClientState *nc; assert(n->vhost_started); - if (!virtio_vdev_has_feature(vdev, VIRTIO_NET_F_MQ) && idx == 2) { + if (!n->multiqueue && idx == 2) { /* Must guard against invalid features and bogus queue index * from being set by malicious guest, or penetrated through * buggy migration stream. @@ -3458,7 +3458,7 @@ static void virtio_net_guest_notifier_mask(VirtIODevice *vdev, int idx, VirtIONet *n = VIRTIO_NET(vdev); NetClientState *nc; assert(n->vhost_started); - if (!virtio_vdev_has_feature(vdev, VIRTIO_NET_F_MQ) && idx == 2) { + if (!n->multiqueue && idx == 2) { /* Must guard against invalid features and bogus queue index * from being set by malicious guest, or penetrated through * buggy migration stream. |