Fixed version with Laine's comments worked in [1].
Patches 2, 3 and 5 has been ACKed already. BTW, patch 4 is really a different
to patch 3. The only thing they share is a commit message body.
Kernel and subsequently QEMU learned multiple transmit queues a while ago. The
feature has a nice advantage, it allows a single guest to transmit multiple
flows of network data using multiple CPUs simultaneously which increase traffic
bandwidth. A lot.
The documentation how to use this is available at [2] or [3].
1:
https://www.redhat.com/archives/libvir-list/2013-May/msg00943.html
2:
https://git.kernel.org/cgit/linux/kernel/git/davem/net-next.git/tree/Docu...
3:
http://git.qemu.org/?p=qemu.git;a=blob;f=qemu-options.hx;hb=HEAD#l1363
Michal Privoznik (11):
Introduce /domain/devices/interface/driver/@queues attribute
qemu: Move interface cmd line construction into a separate function
qemu: Make qemuMonitorAddNetdev to pass multiple FDs
qemu: Make qemuMonitorAddHostNetwork to pass multiple FDs
qemu: Adapt command line generation to multiqueue net
util: Learn virNetDevTapCreate multiqueue network
qemu: Allow multiple vhost-net openings
qemu: Rework qemuNetworkIfaceConnect
qemu: Adapt qemuDomainAttachNetDevice to multiqueue net
qemu: Adapt qemuBuildInterfaceCommandLine to to multiqueue net
qemu: Enable multiqueue network
docs/formatdomain.html.in | 12 +-
docs/schemas/domaincommon.rng | 5 +
src/conf/domain_conf.c | 15 +
src/conf/domain_conf.h | 1 +
src/network/bridge_driver.c | 2 +-
src/qemu/qemu_command.c | 447 +++++++++++++--------
src/qemu/qemu_command.h | 13 +-
src/qemu/qemu_hotplug.c | 103 +++--
src/qemu/qemu_monitor.c | 78 ++--
src/qemu/qemu_monitor.h | 8 +-
src/uml/uml_conf.c | 5 +-
src/util/virnetdevtap.c | 113 +++---
src/util/virnetdevtap.h | 2 +
.../qemuxml2argvdata/qemuxml2argv-vhost_queues.xml | 51 +++
tests/qemuxml2xmltest.c | 1 +
15 files changed, 568 insertions(+), 288 deletions(-)
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-vhost_queues.xml
--
1.8.2.1