On 04/23/2018 09:14 AM, Michal Privoznik wrote:
> v5 of:
>
> https://www.redhat.com/archives/libvir-list/2018-April/msg00736.html
>
> diff to v4:
> - John's review worked in. Partially.
>
> Michal Privoznik (11):
> virstoragefile: Introduce virStoragePRDef
> qemuDomainDiskChangeSupported: Deny changing reservations
> qemu: Introduce pr-manager-helper capability
> qemu: Generate pr cmd line at startup
> qemu_ns: Allow /dev/mapper/control for PR
> qemu_cgroup: Allow /dev/mapper/control for PR
> qemu: Introduce pr_helper to qemu.conf
> qemu: Start PR daemon on domain startup
> qemu_hotplug: Hotplug of reservations
> qemu_hotplug: Hotunplug of reservations
> qemu: Detect pr-manager-helper capability
Based on what I've also reviewed for Stefan Berger's TPM emulator:
https://www.redhat.com/archives/libvir-list/2018-May/msg00366.html
and in particular patch 14 for cgroup resource mgmt. Would you believe
the same concept would need to apply to pr_helper? At least w/r/t how
many cgroup controlled resources the pr_helper should/would be allowed.
We place similar controls on other threads (cpu, iothread, emulator). I
realize a TPM emulator and a pr_helper thread are very different in what
they are doing, but there are similarities that probably need to be
addressed.
John
>
> docs/formatdomain.html.in | 23 +-
> docs/schemas/domaincommon.rng | 34 +--
> docs/schemas/storagecommon.rng | 50 +++++
> m4/virt-driver-qemu.m4 | 5 +
> src/conf/domain_conf.c | 38 ++++
> src/libvirt_private.syms | 6 +
> src/qemu/libvirtd_qemu.aug | 1 +
> src/qemu/qemu.conf | 4 +
> src/qemu/qemu_alias.c | 18 ++
> src/qemu/qemu_alias.h | 4 +
> src/qemu/qemu_capabilities.c | 2 +
> src/qemu/qemu_capabilities.h | 1 +
> src/qemu/qemu_cgroup.c | 33 ++-
> src/qemu/qemu_command.c | 134 ++++++++++++
> src/qemu/qemu_command.h | 5 +
> src/qemu/qemu_conf.c | 7 +-
> src/qemu/qemu_conf.h | 1 +
> src/qemu/qemu_domain.c | 66 ++++++
> src/qemu/qemu_domain.h | 5 +
> src/qemu/qemu_hotplug.c | 149 ++++++++++++-
> src/qemu/qemu_process.c | 232 +++++++++++++++++++++
> src/qemu/qemu_process.h | 6 +
> src/qemu/test_libvirtd_qemu.aug.in | 1 +
> src/util/virdevmapper.c | 8 +-
> src/util/virstoragefile.c | 164 +++++++++++++++
> src/util/virstoragefile.h | 18 ++
> tests/qemucapabilitiesdata/caps_2.11.0.s390x.xml | 1 +
> tests/qemucapabilitiesdata/caps_2.12.0.aarch64.xml | 1 +
> tests/qemucapabilitiesdata/caps_2.12.0.ppc64.xml | 1 +
> tests/qemucapabilitiesdata/caps_2.12.0.s390x.xml | 1 +
> tests/qemucapabilitiesdata/caps_2.12.0.x86_64.xml | 1 +
> .../disk-virtio-scsi-reservations.args | 38 ++++
> .../disk-virtio-scsi-reservations.xml | 49 +++++
> tests/qemuxml2argvtest.c | 4 +
> .../disk-virtio-scsi-reservations.xml | 1 +
> tests/qemuxml2xmltest.c | 2 +
> 36 files changed, 1075 insertions(+), 39 deletions(-)
> create mode 100644 tests/qemuxml2argvdata/disk-virtio-scsi-reservations.args
> create mode 100644 tests/qemuxml2argvdata/disk-virtio-scsi-reservations.xml
> create mode 120000 tests/qemuxml2xmloutdata/disk-virtio-scsi-reservations.xml
>
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list