This patch set addresses issue(s) described in [1] and the core of
changes go to the first patch. The others are cleanups and
refactorings.
Diff from v1:
- rename virPortRange to virPortAllocatorRange (virPortRange is occupied)
- release ports in libxl and bhyve tests
- overload bind syscall for libxl and bhyve tests
- fix undefined behaviour on port release on error paths in qemu test
WARNING! I did not compile with bhyve.
[1]
https://www.redhat.com/archives/libvir-list/2017-December/msg00600.html
Nikolay Shirokovskiy (6):
port allocator: make used port bitmap global
port allocator: remove range on manual port reserving
port allocator: remove range check in release function
port allocator: drop skip bind check flag
port allocator: remove release functionality from set used
port allocator: make port range constant object
src/bhyve/bhyve_command.c | 4 +-
src/bhyve/bhyve_driver.c | 5 +-
src/bhyve/bhyve_process.c | 7 +-
src/bhyve/bhyve_utils.h | 2 +-
src/libvirt_private.syms | 3 +-
src/libxl/libxl_conf.c | 8 +-
src/libxl/libxl_conf.h | 12 +--
src/libxl/libxl_domain.c | 3 +-
src/libxl/libxl_driver.c | 17 ++---
src/libxl/libxl_migration.c | 4 +-
src/qemu/qemu_conf.h | 12 +--
src/qemu/qemu_driver.c | 27 +++----
src/qemu/qemu_migration.c | 12 +--
src/qemu/qemu_process.c | 55 ++++----------
src/util/virportallocator.c | 166 ++++++++++++++++++++++++-----------------
src/util/virportallocator.h | 25 +++----
tests/bhyvexml2argvmock.c | 7 ++
tests/bhyvexml2argvtest.c | 10 ++-
tests/libxlxml2domconfigtest.c | 12 ++-
tests/virmocklibxl.c | 7 ++
tests/virportallocatortest.c | 53 +++++++------
21 files changed, 237 insertions(+), 214 deletions(-)
--
1.8.3.1