Right now, libvirt only supports the cfq based blkio cgorup,
this means if the block devices doesn't use cfq scheduler,
the
blkio cgroup will loss effect.
This patchset adds the throttle blkio cgroup support for
libvirt,
intoduces four elements for domain configuration and extend
the
virsh command blkiotune.
This patchset is a new version of Guan Qiang's patchset
://www.redhat.com/archives/libvir-list/2013-October/msg01066.html
Change form Guan Qiang's patchset:
1, split to 8 patches, make logic more clear
2, change the type of read/write iops form unsigned long long to
unsigned int,
trying to set read/write iops to the value which
bigger than max number of
unsigned int will fail.
3, fix some logic shortage.
Gao feng (9):
rename virDomainBlkioDeviceWeightParseXML to
virDomainBlkioDeviceParseXML
rename virBlkioDeviceWeightArrayClear to
virBlkioDeviceArrayClear
rename virBlkioDeviceWeightPtr to virBlkioDevicePtr
domain: introduce xml elements for throttle blkio
cgroup
blkio: Setting throttle blkio cgroup for domain
qemu: allow to setup throttle blkio cgroup through
virsh
virsh: add virsh manual for setting throttle blkio
cgroup
lxc: allow to setup throttle blkio cgroup through
virsh
qemu: add new throttle blkio cgroup elements to the test
xml
docs/schemas/domaincommon.rng
| 28 +-
include/libvirt/libvirt.h.in
| 45 ++
src/conf/domain_conf.c
| 113 +++-
src/conf/domain_conf.h
| 16 +-
src/libvirt_private.syms
| 5 +-
src/lxc/lxc_cgroup.c
| 12 +-
src/lxc/lxc_driver.c
| 649 ++++++++++++++++++++-
src/qemu/qemu_cgroup.c
| 13 +-
src/qemu/qemu_driver.c
| 432 ++++++++++++--
src/util/vircgroup.c
| 170 +++++-
src/util/vircgroup.h
| 18 +
.../qemuxml2argv-blkiotune-device.xml
| 8 +
tools/virsh-domain.c
| 64 ++
tools/virsh.pod
| 36 +-
14 files changed, 1485 insertions(+), 124 deletions(-)
--
1.8.3.1
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list