libvirt/src/logging
Daniel P. Berrangé eefabb38c3 rpc: switch virtlockd and virtlogd to use single-threaded dispatch
Currently both virtlogd and virtlockd use a single worker thread for
dispatching RPC messages. Even this is overkill and their RPC message
handling callbacks all run in short, finite time and so blocking the
main loop is not an issue like you'd see in libvirtd with long running
QEMU commands.

By setting max_workers==0, we can turn off the worker thread and run
these daemons single threaded. This in turn fixes a serious problem in
the virtlockd daemon whereby it loses all fcntl() locks at re-exec due
to multiple threads existing. fcntl() locks only get preserved if the
process is single threaded at time of exec().

Reviewed-by: John Ferlan <jferlan@redhat.com>
Reviewed-by: Jim Fehlig <jfehlig@suse.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2018-03-08 15:40:29 +00:00
..
log_daemon_config.c logd: add support for admin protocol in virtlogd 2018-01-31 15:17:47 +00:00
log_daemon_config.h logd: add support for admin protocol in virtlogd 2018-01-31 15:17:47 +00:00
log_daemon_dispatch.c
log_daemon_dispatch.h
log_daemon.c rpc: switch virtlockd and virtlogd to use single-threaded dispatch 2018-03-08 15:40:29 +00:00
log_daemon.h
log_handler.c
log_handler.h
log_manager.c
log_manager.h
log_protocol.x
Makefile.inc.am make: split logging daemon build rules into logging/Makefile.inc.am 2018-03-05 17:12:01 +00:00
test_virtlogd.aug.in logd: add support for admin protocol in virtlogd 2018-01-31 15:17:47 +00:00
virtlogd-admin.socket.in logd: add support for admin protocol in virtlogd 2018-01-31 15:17:47 +00:00
virtlogd.aug logd: add support for admin protocol in virtlogd 2018-01-31 15:17:47 +00:00
virtlogd.conf
virtlogd.init.in
virtlogd.pod
virtlogd.service.in logd: add support for admin protocol in virtlogd 2018-01-31 15:17:47 +00:00
virtlogd.socket.in
virtlogd.sysconf