RE: [PATCH V3 5/6] vDPA: answer num of queue pairs = 1 to userspace when VIRTIO_NET_F_MQ == 0
From: Parav Pandit <hidden>
Date: 2022-07-12 16:48:34
Also in:
virtualization
From: Parav Pandit <hidden>
Date: 2022-07-12 16:48:34
Also in:
virtualization
From: Zhu, Lingshan <redacted> Sent: Sunday, July 10, 2022 10:30 PM
quoted
Showing max_vq_pairs of 1 even when _MQ is not negotiated, incorrectlysays that max_vq_pairs is exposed to the guest, but it is not offered.quoted
So, please fix the iproute2 to not print max_vq_pairs when it is notreturned by the kernel. iproute2 can report whether there is MQ feature in the device / driver feature bits. I think iproute2 only queries the number of max queues here. max_vq_pairs shows how many queue pairs there, this attribute's existence does not depend on MQ, if no MQ, there are still one queue pair, so just show one.
This netlink attribute's existence is depending on the _MQ feature bit existence. We can break that and report the value, but if we break that there are many other config space bits who doesn’t have good default like max_vq_pairs. There is ambiguity for user space what to do with it and so in the kernel space.. Instead of dealing with them differently in kernel, at present we attach each netlink attribute to a respective feature bit wherever applicable. And code in kernel and user space is uniform to handle them.