From: Sahid Orentino Ferdjaoui <sahid.ferdjaoui(a)redhat.com>
In version 2.7.0, QEMU introduced support of busy polling for
vhost-net [0]. To avoid paraphrasing original authors of that feature
and the purpose it I prefer to share a pointer [1].
This patch serie exposes throught the NIC driver-specific element a
new option 'poll_us'. That option is only available with the backend
driver 'vhost' and that because libvirt automatically fallback to QEMU
if the driver is not specified where that option is not available.
The option 'poll_us' takes a positive. 0 means that the option
is not going to be exposed.
[0] 69e87b32680a41d9761191443587c595b6f5fc3f
[1]
https://lists.gnu.org/archive/html/qemu-devel/2016-11/msg04595.html
Sahid Orentino Ferdjaoui (3):
qemu: detect support for vhost-net busy polling
conf: introduce 'poll_us' attribute for domain interface
This patch finalizes support of 'poll_us' attribute as an option of
the NIC driver-specific element, the commit also takes care of
hotplug.
docs/formatdomain.html.in | 12 +++++++-
docs/schemas/domaincommon.rng | 5 ++++
src/conf/domain_conf.c | 16 +++++++++++
src/conf/domain_conf.h | 1 +
src/qemu/qemu_capabilities.c | 5 ++++
src/qemu/qemu_capabilities.h | 1 +
src/qemu/qemu_command.c | 28 ++++++++++++++++++
src/qemu/qemu_hotplug.c | 12 ++++++++
tests/qemucapabilitiesdata/caps_2.7.0.s390x.xml | 1 +
tests/qemucapabilitiesdata/caps_2.7.0.x86_64.xml | 1 +
tests/qemucapabilitiesdata/caps_2.8.0.s390x.xml | 1 +
tests/qemucapabilitiesdata/caps_2.8.0.x86_64.xml | 1 +
tests/qemucapabilitiesdata/caps_2.9.0.x86_64.xml | 1 +
.../qemuxml2argv-net-virtio-netdev-pollus-fail.xml | 23 +++++++++++++++
...xml2argv-net-virtio-netdev-pollus-qemu-fail.xml | 23 +++++++++++++++
.../qemuxml2argv-net-virtio-netdev-pollus.args | 25 ++++++++++++++++
.../qemuxml2argv-net-virtio-netdev-pollus.xml | 23 +++++++++++++++
.../qemuxml2argv-net-virtio-poll-us.xml | 23 +++++++++++++++
tests/qemuxml2argvtest.c | 9 ++++++
.../qemuxml2xmlout-net-virtio-poll-us.xml | 33 ++++++++++++++++++++++
tests/qemuxml2xmltest.c | 1 +
21 files changed, 244 insertions(+), 1 deletion(-)
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-net-virtio-netdev-pollus-fail.xml
create mode 100644
tests/qemuxml2argvdata/qemuxml2argv-net-virtio-netdev-pollus-qemu-fail.xml
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-net-virtio-netdev-pollus.args
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-net-virtio-netdev-pollus.xml
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-net-virtio-poll-us.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-net-virtio-poll-us.xml
--
2.9.4