This patch series takes the long road on the way to adding support
for Xen's max_grant_frames to libvirt. Patch1 adds a new 'xenbus'
controller type that supports a maxGrantFrames attribute.
maxGrantFrames describes the maximum IO buffer space (or DMA space)
available in the xenbus controller for use by connected paravirtual
devices.
Patch2 adds a xenbus controller to the domXML in post-parse callback
if one is not explicitly specified, with downside of requiring touching
all test files.
Patch3 adds support for max grant frames in the libxl driver and a
test to check the libxl domain config generator. Patch4 adds support
for the setting on the domXML<->native config converter and also
includes a test.
Jim Fehlig (4):
conf: Add a new 'xenbus' controller type
libxl: Add implicit xenbus controller
libxl: Add support for max_grant_frames
xenconfig: Add support for max_grant_frames
docs/formatdomain.html.in | 6 ++
docs/schemas/domaincommon.rng | 11 +++
src/conf/domain_conf.c | 25 ++++++
src/conf/domain_conf.h | 8 ++
src/libxl/libxl_conf.c | 9 ++
src/libxl/libxl_domain.c | 5 ++
src/qemu/qemu_command.c | 1 +
src/qemu/qemu_domain.c | 2 +
src/qemu/qemu_domain_address.c | 1 +
src/xenconfig/xen_xl.c | 56 ++++++++++++
.../max-gntframes-hvm.json | 90 +++++++++++++++++++
.../max-gntframes-hvm.xml | 37 ++++++++
tests/libxlxml2domconfigtest.c | 3 +
tests/sexpr2xmldata/sexpr2xml-boot-grub.xml | 1 +
.../sexpr2xmldata/sexpr2xml-bridge-ipaddr.xml | 1 +
tests/sexpr2xmldata/sexpr2xml-curmem.xml | 1 +
.../sexpr2xml-disk-block-shareable.xml | 1 +
tests/sexpr2xmldata/sexpr2xml-disk-block.xml | 1 +
.../sexpr2xml-disk-drv-blktap-qcow.xml | 1 +
.../sexpr2xml-disk-drv-blktap-raw.xml | 1 +
.../sexpr2xml-disk-drv-blktap2-raw.xml | 1 +
tests/sexpr2xmldata/sexpr2xml-disk-file.xml | 1 +
tests/sexpr2xmldata/sexpr2xml-fv-autoport.xml | 1 +
.../sexpr2xml-fv-empty-kernel.xml | 1 +
.../sexpr2xmldata/sexpr2xml-fv-force-hpet.xml | 1 +
.../sexpr2xml-fv-force-nohpet.xml | 1 +
tests/sexpr2xmldata/sexpr2xml-fv-kernel.xml | 1 +
.../sexpr2xmldata/sexpr2xml-fv-localtime.xml | 1 +
.../sexpr2xml-fv-net-netfront.xml | 1 +
.../sexpr2xml-fv-parallel-tcp.xml | 1 +
.../sexpr2xml-fv-serial-dev-2-ports.xml | 1 +
.../sexpr2xml-fv-serial-dev-2nd-port.xml | 1 +
.../sexpr2xml-fv-serial-file.xml | 1 +
.../sexpr2xml-fv-serial-null.xml | 1 +
.../sexpr2xml-fv-serial-pipe.xml | 1 +
.../sexpr2xmldata/sexpr2xml-fv-serial-pty.xml | 1 +
.../sexpr2xml-fv-serial-stdio.xml | 1 +
.../sexpr2xml-fv-serial-tcp-telnet.xml | 1 +
.../sexpr2xmldata/sexpr2xml-fv-serial-tcp.xml | 1 +
.../sexpr2xmldata/sexpr2xml-fv-serial-udp.xml | 1 +
.../sexpr2xml-fv-serial-unix.xml | 1 +
.../sexpr2xmldata/sexpr2xml-fv-sound-all.xml | 1 +
tests/sexpr2xmldata/sexpr2xml-fv-sound.xml | 1 +
tests/sexpr2xmldata/sexpr2xml-fv-usbmouse.xml | 1 +
.../sexpr2xmldata/sexpr2xml-fv-usbtablet.xml | 1 +
tests/sexpr2xmldata/sexpr2xml-fv-utc.xml | 1 +
tests/sexpr2xmldata/sexpr2xml-fv-v2.xml | 1 +
tests/sexpr2xmldata/sexpr2xml-fv.xml | 1 +
tests/sexpr2xmldata/sexpr2xml-net-bridged.xml | 1 +
tests/sexpr2xmldata/sexpr2xml-net-e1000.xml | 1 +
tests/sexpr2xmldata/sexpr2xml-net-routed.xml | 1 +
.../sexpr2xml-no-source-cdrom.xml | 1 +
tests/sexpr2xmldata/sexpr2xml-pci-devs.xml | 1 +
.../sexpr2xml-pv-bootloader-cmdline.xml | 1 +
.../sexpr2xmldata/sexpr2xml-pv-bootloader.xml | 1 +
.../sexpr2xmldata/sexpr2xml-pv-localtime.xml | 1 +
tests/sexpr2xmldata/sexpr2xml-pv-vcpus.xml | 1 +
.../sexpr2xml-pv-vfb-new-vncdisplay.xml | 1 +
tests/sexpr2xmldata/sexpr2xml-pv-vfb-new.xml | 1 +
.../sexpr2xml-pv-vfb-type-crash.xml | 1 +
tests/sexpr2xmldata/sexpr2xml-pv.xml | 1 +
tests/sexpr2xmldata/sexpr2xml-vif-rate.xml | 1 +
tests/xlconfigdata/test-channel-pty.xml | 1 +
tests/xlconfigdata/test-channel-unix.xml | 1 +
.../test-disk-positional-parms-full.xml | 1 +
.../test-disk-positional-parms-partial.xml | 1 +
tests/xlconfigdata/test-disk-qed.xml | 1 +
tests/xlconfigdata/test-fullvirt-cpuid.xml | 1 +
...ullvirt-direct-kernel-boot-bogus-extra.xml | 1 +
...test-fullvirt-direct-kernel-boot-extra.xml | 1 +
.../test-fullvirt-direct-kernel-boot.xml | 1 +
.../xlconfigdata/test-fullvirt-hpet-timer.xml | 1 +
.../test-fullvirt-multi-timer.xml | 1 +
.../test-fullvirt-multiserial.xml | 1 +
tests/xlconfigdata/test-fullvirt-multiusb.xml | 1 +
.../test-fullvirt-nestedhvm-disabled.xml | 1 +
.../xlconfigdata/test-fullvirt-nestedhvm.xml | 1 +
tests/xlconfigdata/test-fullvirt-nohap.xml | 1 +
tests/xlconfigdata/test-fullvirt-ovmf.xml | 1 +
.../test-fullvirt-ovswitch-tagged.xml | 1 +
.../test-fullvirt-ovswitch-trunked.xml | 1 +
.../xlconfigdata/test-fullvirt-tsc-timer.xml | 1 +
tests/xlconfigdata/test-fullvirt-type.xml | 1 +
tests/xlconfigdata/test-fullvirt-vnuma.xml | 1 +
tests/xlconfigdata/test-max-gntframes.cfg | 13 +++
tests/xlconfigdata/test-max-gntframes.xml | 32 +++++++
tests/xlconfigdata/test-new-disk.xml | 1 +
...test-paravirt-cmdline-bogus-extra-root.xml | 1 +
.../test-paravirt-cmdline-extra-root.xml | 1 +
tests/xlconfigdata/test-paravirt-cmdline.xml | 1 +
tests/xlconfigdata/test-paravirt-maxvcpus.xml | 1 +
tests/xlconfigdata/test-paravirt-type.xml | 1 +
tests/xlconfigdata/test-pvh-type.xml | 1 +
.../test-rbd-multihost-noauth.xml | 1 +
tests/xlconfigdata/test-spice-features.xml | 1 +
tests/xlconfigdata/test-spice.xml | 1 +
tests/xlconfigdata/test-usb.xml | 1 +
tests/xlconfigdata/test-usbctrl.xml | 1 +
tests/xlconfigdata/test-vif-multi-ip.xml | 1 +
tests/xlconfigdata/test-vif-rate.xml | 1 +
tests/xlconfigdata/test-vif-typename.xml | 1 +
tests/xlconfigtest.c | 4 +
.../xmconfigdata/test-disk-drv-blktap-raw.xml | 1 +
.../test-disk-drv-blktap2-raw.xml | 1 +
tests/xmconfigdata/test-escape-paths.xml | 1 +
.../test-fullvirt-default-feature.xml | 1 +
.../xmconfigdata/test-fullvirt-force-hpet.xml | 1 +
.../test-fullvirt-force-nohpet.xml | 1 +
.../xmconfigdata/test-fullvirt-localtime.xml | 1 +
.../test-fullvirt-net-netfront.xml | 1 +
.../xmconfigdata/test-fullvirt-new-cdrom.xml | 1 +
tests/xmconfigdata/test-fullvirt-nohap.xml | 1 +
.../test-fullvirt-parallel-tcp.xml | 1 +
.../test-fullvirt-serial-file.xml | 1 +
.../test-fullvirt-serial-null.xml | 1 +
.../test-fullvirt-serial-pipe.xml | 1 +
.../xmconfigdata/test-fullvirt-serial-pty.xml | 1 +
.../test-fullvirt-serial-stdio.xml | 1 +
.../test-fullvirt-serial-tcp-telnet.xml | 1 +
.../xmconfigdata/test-fullvirt-serial-tcp.xml | 1 +
.../xmconfigdata/test-fullvirt-serial-udp.xml | 1 +
.../test-fullvirt-serial-unix.xml | 1 +
tests/xmconfigdata/test-fullvirt-sound.xml | 1 +
tests/xmconfigdata/test-fullvirt-usbmouse.xml | 1 +
.../xmconfigdata/test-fullvirt-usbtablet.xml | 1 +
tests/xmconfigdata/test-fullvirt-utc.xml | 1 +
tests/xmconfigdata/test-no-source-cdrom.xml | 1 +
.../xmconfigdata/test-paravirt-extra-root.xml | 1 +
tests/xmconfigdata/test-paravirt-maxvcpus.xml | 1 +
.../xmconfigdata/test-paravirt-net-e1000.xml | 1 +
.../test-paravirt-net-vifname.xml | 1 +
.../test-paravirt-new-pvfb-vncdisplay.xml | 1 +
tests/xmconfigdata/test-paravirt-new-pvfb.xml | 1 +
tests/xmconfigdata/test-paravirt-root.xml | 1 +
tests/xmconfigdata/test-paravirt-vcpu.xml | 1 +
tests/xmconfigdata/test-pci-devs.xml | 1 +
136 files changed, 423 insertions(+)
create mode 100644 tests/libxlxml2domconfigdata/max-gntframes-hvm.json
create mode 100644 tests/libxlxml2domconfigdata/max-gntframes-hvm.xml
create mode 100644 tests/xlconfigdata/test-max-gntframes.cfg
create mode 100644 tests/xlconfigdata/test-max-gntframes.xml
--
2.20.1