Qcow2 small IO random write performance will drop dramatically if the l2
cache table could not cover the whole disk. This will be a lot of l2
cache table RW operations if cache miss happens frequently.
This patch exports the qcow2 driver parameter
l2-cache-size/refcount-cache-size, first added in Qemu 2.2, and
cache-clean-interval, first added in Qemu 2.5, in libvirt.
*** BLURB HERE ***
Liu Qing (2):
conf, docs: Add qcow2 cache configuration support
qemu: add capability checking for qcow2 cache configuration
docs/formatdomain.html.in | 21 ++++++++++
docs/schemas/domaincommon.rng | 24 +++++++++++
src/conf/domain_conf.c | 30 ++++++++++++++
src/qemu/qemu_capabilities.c | 15 +++++++
src/qemu/qemu_capabilities.h | 3 ++
src/qemu/qemu_command.c | 47 ++++++++++++++++++++++
src/util/virstoragefile.c | 3 ++
src/util/virstoragefile.h | 4 ++
tests/qemucapabilitiesdata/caps_2.4.0.x86_64.xml | 2 +
tests/qemucapabilitiesdata/caps_2.5.0.x86_64.xml | 3 ++
.../caps_2.6.0-gicv2.aarch64.xml | 3 ++
.../caps_2.6.0-gicv3.aarch64.xml | 3 ++
tests/qemucapabilitiesdata/caps_2.6.0.ppc64le.xml | 3 ++
tests/qemucapabilitiesdata/caps_2.6.0.x86_64.xml | 3 ++
tests/qemucapabilitiesdata/caps_2.7.0.s390x.xml | 3 ++
tests/qemucapabilitiesdata/caps_2.7.0.x86_64.xml | 3 ++
tests/qemucapabilitiesdata/caps_2.8.0.s390x.xml | 3 ++
tests/qemucapabilitiesdata/caps_2.8.0.x86_64.xml | 3 ++
tests/qemucapabilitiesdata/caps_2.9.0.ppc64le.xml | 3 ++
tests/qemucapabilitiesdata/caps_2.9.0.s390x.xml | 3 ++
tests/qemucapabilitiesdata/caps_2.9.0.x86_64.xml | 3 ++
...argv-disk-drive-qcow2-cache-clean-interval.args | 27 +++++++++++++
...2argv-disk-drive-qcow2-cache-clean-interval.xml | 37 +++++++++++++++++
...emuxml2argv-disk-drive-qcow2-l2-cache-size.args | 27 +++++++++++++
...qemuxml2argv-disk-drive-qcow2-l2-cache-size.xml | 37 +++++++++++++++++
...2argv-disk-drive-qcow2-refcount-cache-size.args | 27 +++++++++++++
...l2argv-disk-drive-qcow2-refcount-cache-size.xml | 37 +++++++++++++++++
tests/qemuxml2argvtest.c | 6 +++
...mlout-disk-drive-qcow2-cache-clean-interval.xml | 41 +++++++++++++++++++
...muxml2xmlout-disk-drive-qcow2-l2-cache-size.xml | 41 +++++++++++++++++++
...xmlout-disk-drive-qcow2-refcount-cache-size.xml | 41 +++++++++++++++++++
tests/qemuxml2xmltest.c | 3 ++
32 files changed, 509 insertions(+)
create mode 100644
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-qcow2-cache-clean-interval.args
create mode 100644
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-qcow2-cache-clean-interval.xml
create mode 100644
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-qcow2-l2-cache-size.args
create mode 100644
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-qcow2-l2-cache-size.xml
create mode 100644
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-qcow2-refcount-cache-size.args
create mode 100644
tests/qemuxml2argvdata/qemuxml2argv-disk-drive-qcow2-refcount-cache-size.xml
create mode 100644
tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-qcow2-cache-clean-interval.xml
create mode 100644
tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-qcow2-l2-cache-size.xml
create mode 100644
tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-qcow2-refcount-cache-size.xml
--
1.8.3.1