[libvirt PATCH 00/17] qemu: Implement external limit manager feature

Andrea Bolognani abologna at redhat.com
Fri Mar 5 19:13:47 UTC 2021


This feature has been requested by KubeVirt developers and will make
it possible for them to make some VFIO-related features, such as
migration and hotplug, work correctly.

  https://bugzilla.redhat.com/show_bug.cgi?id=1916346

The first part of the series, especially the first 9 patches, is
preparation work: it addresses a few annoying issues with our APIs
that deal with process limits, and makes them all nice, consistent
and easy to reason about while moving policy code from the generic
code to the QEMU driver where it belongs.

Andrea Bolognani (17):
  util: Document limit-related functions
  util: Simplify stubs
  util: Always pass a pid to virProcessSetMax*()
  util: Introduce virProcess{Get,Set}Limit()
  qemu: Make some minor tweaks
  qemu: Set all limits at the same time
  util: Have virCommand remember whether limits are set
  qemu: Set limits only when explicitly asked to do so
  util: Don't special-case setting a limit to zero
  conf: Rename original_memlock -> originalMemlock
  tests: Mock virProcessGetMaxMemLock()
  util: Try to get limits from /proc
  qemu: Don't ignore virProcessGetMaxMemLock() errors
  qemu: Refactor qemuDomainAdjustMaxMemLock()
  qemu: Add external_limit_manager config knob
  qemu: Wire up external limit manager
  news: Document external limit manager feature

 NEWS.rst                           |  10 +
 src/conf/domain_conf.h             |   5 +-
 src/qemu/libvirtd_qemu.aug         |   1 +
 src/qemu/qemu.conf                 |  12 +
 src/qemu/qemu_command.c            |   4 -
 src/qemu/qemu_conf.c               |   4 +
 src/qemu/qemu_conf.h               |   1 +
 src/qemu/qemu_domain.c             |  47 ++--
 src/qemu/qemu_migration.c          |   2 +
 src/qemu/qemu_process.c            |  30 ++-
 src/qemu/test_libvirtd_qemu.aug.in |   1 +
 src/util/vircommand.c              |  21 +-
 src/util/virprocess.c              | 340 ++++++++++++++++++++---------
 src/util/virprocess.h              |   2 +-
 tests/virprocessmock.c             |   7 +
 15 files changed, 354 insertions(+), 133 deletions(-)

-- 
2.26.2





More information about the libvir-list mailing list