Feature proposal: Add page-per-vq flag to the 'driver' element of virtio devices

Hi, The page-per-vq flag is important for vdpa with vhost-user performance [1]. Currently there is no way in libvirt to set it in the xml page-per-vq except with qemu args, like so: <devices> <interface type='vhostuser'> <mac address='fa:16:3e:92:6d:79'/> <source type='unix' path='/var/lib/vhost_sockets/sock7f9a971a-cf3' mode='server'/> <model type='virtio'/> <driver queues='4' rx_queue_size='512' tx_queue_size='512'/> <alias name='net0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </interface> </devices> <qemu:commandline> <qemu:arg value='-set'/> <qemu:arg value='device.net0.page-per-vq=on'/> </qemu:commandline> However, this is not an approach which can be used for hotplug devices, as qemu:commandline arguments cannot be used for them, and is therefore not suitable for production. We propose to add the flag to the ' driver' element of virtio devices, as this is an attribute related to the virtio transport [2]. This will enable configuring virtio devices with the page-per-vq flag without relying on qemu:commandline arguments. Are there any issues that would prevent this feature from being accepted? Thanks, Gavi [1] - http://doc.dpdk.org/guides/sample_app_ug/vdpa.html - look for page-per-vq [2] - https://libvirt.org/formatdomain.html#virtio-related-options

On 4/18/21 10:08 AM, Gavi Teitz wrote:
Hi,
The page-per-vq flag is important for vdpa with vhost-user performance [1].
Currently there is no way in libvirt to set it in the xml page-per-vq except with qemu args, like so:
Yeah, we view extra cmd line arguments as unsupported.
Are there any issues that would prevent this feature from being accepted?
Not at all, please do send a patch and I can review it. Michal

On Mon, 19 Apr 2021 14:16:59 +0200 Michal Privoznik <mprivozn@redhat.com> wrote:
On 4/18/21 10:08 AM, Gavi Teitz wrote:
Hi,
The page-per-vq flag is important for vdpa with vhost-user performance [1].
Currently there is no way in libvirt to set it in the xml page-per-vq except with qemu args, like so:
Yeah, we view extra cmd line arguments as unsupported.
Are there any issues that would prevent this feature from being accepted?
Not at all, please do send a patch and I can review it.
Michal
There is a related bug currently assigned to me that I was intending to look at soon: https://bugzilla.redhat.com/show_bug.cgi?id=1925363 Jonathon

On Monday, April 19, 2021 18:10 Jonathon Jongsma <jjongsma@redhat.com> wrote:
On Mon, 19 Apr 2021 14:16:59 +0200 Michal Privoznik <mprivozn@redhat.com> wrote:
On 4/18/21 10:08 AM, Gavi Teitz wrote:
Hi,
The page-per-vq flag is important for vdpa with vhost-user performance [1].
Currently there is no way in libvirt to set it in the xml page-per-vq except with qemu args, like so:
Yeah, we view extra cmd line arguments as unsupported.
Are there any issues that would prevent this feature from being accepted?
Not at all, please do send a patch and I can review it.
Michal
There is a related bug currently assigned to me that I was intending to look at soon: https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugzilla.r...
Jonathon
Yep, that is the issue we opened, we are promoting a fix for it, I should have the patch ready in the next few days. Thanks, Gavi
participants (3)
-
Gavi Teitz
-
Jonathon Jongsma
-
Michal Privoznik