One way to reproduce the bugs is to set admin_max_workers=0 in libvirtd.conf, restart libvirtd, and then call: $ virt-admin server-threadpool-info admin Changelog: v1->v2: - Worked in Daniel Berrangé's comments that: 1. max_workers=0 should not be allowed for the libvirtd (patch 3) 2. it shouldn't be allowed to switch between zero and non-zero max_workers (patch 4) - Changed the deadlock fix (patch 1) - Added two small fixes (patch 5 and 6) Marc Hartmayer (6): rpc: Fix deadlock if there is no worker pool available rpc: Initialize a worker pool for max_workers=0 as well virThreadPool: Prevent switching between zero and non-zero maxWorkers daemon: Raise an error if 'max_workers' < 1 in libvirtd.conf virt-admin: Fix two error messages rpc: Fix name of include guard src/libvirt_private.syms | 4 ++ src/remote/remote_daemon_config.c | 5 +++ src/rpc/virnetserver.c | 28 ++++++++------ src/rpc/virnetserverprogram.h | 4 +- src/util/virthreadpool.c | 81 ++++++++++++++++++++++++++++++--------- src/util/virthreadpool.h | 8 ++++ tools/virt-admin.c | 5 ++- 7 files changed, 101 insertions(+), 34 deletions(-) -- 2.13.4 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list