A problem reported recently to the mailing list[1] uncovered
some flaws in the way we deal with setting the memory locking
limit for QEMU guests.

This series solves those issues and adds test suite coverage
to hopefully prevent more bugs from popping up in the future.


[1] https://www.redhat.com/archives/libvir-list/2017-March/msg00534.html

Andrea Bolognani (8):
  Revert "qemu: Forbid <memoryBacking><locked> without
    <memtune><hard_limit>"
  qemu: Remove qemuDomainRequiresMemLock()
  qemu: Fix memory locking limit calculation
  process: Translate "unlimited" correctly
  command: Introduce virCommandGetMaxMemLock()
  tests: Introduce virTestCompareToULL()
  tests: Introduce QEMU memory locking limit tests
  docs: Improve documentation related to memory locking

 docs/formatdomain.html.in                          |  36 +++--
 src/libvirt_private.syms                           |   1 +
 src/qemu/qemu_command.c                            |   4 +-
 src/qemu/qemu_domain.c                             |  75 ++++-----
 src/qemu/qemu_domain.h                             |   1 -
 src/util/vircommand.c                              |   9 ++
 src/util/vircommand.h                              |   2 +
 src/util/virprocess.c                              |  20 ++-
 tests/Makefile.am                                  |   9 ++
 .../qemumemlock-pc-hardlimit+hostdev.xml           |  20 +++
 .../qemumemlock-pc-hardlimit+locked+hostdev.xml    |  23 +++
 .../qemumemlock-pc-hardlimit+locked.xml            |  17 ++
 tests/qemumemlockdata/qemumemlock-pc-hardlimit.xml |  14 ++
 tests/qemumemlockdata/qemumemlock-pc-hostdev.xml   |  17 ++
 tests/qemumemlockdata/qemumemlock-pc-kvm.xml       |  11 ++
 .../qemumemlock-pc-locked+hostdev.xml              |  20 +++
 tests/qemumemlockdata/qemumemlock-pc-locked.xml    |  14 ++
 tests/qemumemlockdata/qemumemlock-pc-tcg.xml       |  11 ++
 .../qemumemlock-pseries-hardlimit+hostdev.xml      |  20 +++
 ...emumemlock-pseries-hardlimit+locked+hostdev.xml |  23 +++
 .../qemumemlock-pseries-hardlimit+locked.xml       |  17 ++
 .../qemumemlock-pseries-hardlimit.xml              |  14 ++
 .../qemumemlock-pseries-hostdev.xml                |  17 ++
 tests/qemumemlockdata/qemumemlock-pseries-kvm.xml  |  11 ++
 .../qemumemlock-pseries-locked+hostdev.xml         |  20 +++
 .../qemumemlockdata/qemumemlock-pseries-locked.xml |  14 ++
 tests/qemumemlockdata/qemumemlock-pseries-tcg.xml  |  11 ++
 tests/qemumemlocktest.c                            | 172 +++++++++++++++++++++
 tests/qemuxml2argvdata/qemuxml2argv-mlock-on.xml   |   3 -
 tests/testutils.c                                  |  27 ++++
 tests/testutils.h                                  |   2 +
 31 files changed, 583 insertions(+), 72 deletions(-)
 create mode 100644 tests/qemumemlockdata/qemumemlock-pc-hardlimit+hostdev.xml
 create mode 100644 
tests/qemumemlockdata/qemumemlock-pc-hardlimit+locked+hostdev.xml
 create mode 100644 tests/qemumemlockdata/qemumemlock-pc-hardlimit+locked.xml
 create mode 100644 tests/qemumemlockdata/qemumemlock-pc-hardlimit.xml
 create mode 100644 tests/qemumemlockdata/qemumemlock-pc-hostdev.xml
 create mode 100644 tests/qemumemlockdata/qemumemlock-pc-kvm.xml
 create mode 100644 tests/qemumemlockdata/qemumemlock-pc-locked+hostdev.xml
 create mode 100644 tests/qemumemlockdata/qemumemlock-pc-locked.xml
 create mode 100644 tests/qemumemlockdata/qemumemlock-pc-tcg.xml
 create mode 100644 
tests/qemumemlockdata/qemumemlock-pseries-hardlimit+hostdev.xml
 create mode 100644 
tests/qemumemlockdata/qemumemlock-pseries-hardlimit+locked+hostdev.xml
 create mode 100644 
tests/qemumemlockdata/qemumemlock-pseries-hardlimit+locked.xml
 create mode 100644 tests/qemumemlockdata/qemumemlock-pseries-hardlimit.xml
 create mode 100644 tests/qemumemlockdata/qemumemlock-pseries-hostdev.xml
 create mode 100644 tests/qemumemlockdata/qemumemlock-pseries-kvm.xml
 create mode 100644 tests/qemumemlockdata/qemumemlock-pseries-locked+hostdev.xml
 create mode 100644 tests/qemumemlockdata/qemumemlock-pseries-locked.xml
 create mode 100644 tests/qemumemlockdata/qemumemlock-pseries-tcg.xml
 create mode 100644 tests/qemumemlocktest.c

-- 
2.7.4

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list

Reply via email to