diff options
author | Stefan Hajnoczi <stefanha@redhat.com> | 2022-09-27 11:08:36 -0400 |
---|---|---|
committer | Stefan Hajnoczi <stefanha@redhat.com> | 2022-09-27 11:08:36 -0400 |
commit | dbc4f48b5ab3e6d85f78aa4df6bd6ad561c3d152 (patch) | |
tree | 60d94e571965be21b218e04fc8d9638a7ec60d40 /hw/net/virtio-net.c | |
parent | 5c3c21ebd94395c127bd88550999dc672ecccbf2 (diff) | |
parent | bf769f742c3624952f125b303878a77ea870c156 (diff) | |
download | qemu-dbc4f48b5ab3e6d85f78aa4df6bd6ad561c3d152.zip qemu-dbc4f48b5ab3e6d85f78aa4df6bd6ad561c3d152.tar.gz qemu-dbc4f48b5ab3e6d85f78aa4df6bd6ad561c3d152.tar.bz2 |
Merge tag 'net-pull-request' of https://github.com/jasowang/qemu into staging
# -----BEGIN PGP SIGNATURE-----
# Version: GnuPG v1
#
# iQEcBAABAgAGBQJjMqL9AAoJEO8Ells5jWIRUKcH/iNuJpxMXG18pGteBiTu3/ut
# KRR9u1nLZZXA2/02NTOYnrrHcplFQkEBXNHaEintWfctKHIP/llY8LDVriDFM+6N
# 4PzwLGLe7R9S7rfgt/xMDY0nFESFph5XyVTCxAAUm3Exhm8vIg1FM8Tep8lW/taW
# pliDa0K/9pQAfIN+eCnMUtH2JUttak8RwvAg5rXBg7XUx48ZTQn1o7aYYTPOAC2v
# RWkX0BKc7FVK5maAhe6Ugrcf6v4R2mDIAvnr+Anvo67SfgFZ5MtCllr0liJ4h3Vd
# +/PlsBDJotvht3QZVva1tn1Jk5rhN8N8lZbVOuMsklU/tX3Xrj99HJNETLXks2k=
# =82t6
# -----END PGP SIGNATURE-----
# gpg: Signature made Tue 27 Sep 2022 03:15:09 EDT
# gpg: using RSA key EF04965B398D6211
# gpg: Good signature from "Jason Wang (Jason Wang on RedHat) <jasowang@redhat.com>" [full]
# Primary key fingerprint: 215D 46F4 8246 689E C77F 3562 EF04 965B 398D 6211
* tag 'net-pull-request' of https://github.com/jasowang/qemu:
virtio: del net client if net_init_tap_one failed
vdpa: Allow MQ feature in SVQ
virtio-net: Update virtio-net curr_queue_pairs in vdpa backends
vdpa: validate MQ CVQ commands
vdpa: Add vhost_vdpa_net_load_mq
vdpa: extract vhost_vdpa_net_load_mac from vhost_vdpa_net_load
vdpa: Make VhostVDPAState cvq_cmd_in_buffer control ack type
e1000e: set RX desc status with DD flag in a separate operation
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Diffstat (limited to 'hw/net/virtio-net.c')
-rw-r--r-- | hw/net/virtio-net.c | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c index dd0d056..63a8332 100644 --- a/hw/net/virtio-net.c +++ b/hw/net/virtio-net.c @@ -1412,19 +1412,14 @@ static int virtio_net_handle_mq(VirtIONet *n, uint8_t cmd, return VIRTIO_NET_ERR; } - /* Avoid changing the number of queue_pairs for vdpa device in - * userspace handler. A future fix is needed to handle the mq - * change in userspace handler with vhost-vdpa. Let's disable - * the mq handling from userspace for now and only allow get - * done through the kernel. Ripples may be seen when falling - * back to userspace, but without doing it qemu process would - * crash on a recursive entry to virtio_net_set_status(). - */ + n->curr_queue_pairs = queue_pairs; if (nc->peer && nc->peer->info->type == NET_CLIENT_DRIVER_VHOST_VDPA) { - return VIRTIO_NET_ERR; + /* + * Avoid updating the backend for a vdpa device: We're only interested + * in updating the device model queues. + */ + return VIRTIO_NET_OK; } - - n->curr_queue_pairs = queue_pairs; /* stop the backend before changing the number of queue_pairs to avoid handling a * disabled queue */ virtio_net_set_status(vdev, vdev->status); |