On Wed, Mar 12, 2025 at 17:17:57 +0000, Daniel P. Berrangé wrote:
Currently the remote daemon code is responsible for calling
virStateStop
in a background thread. The virNetDaemon code wants to synchronize with
this during shutdown, however, so the virThreadPtr must be passed over.
Even the limited synchronization done currently, however, is flawed and
to fix this requires the virNetDaemon code to be responsible for calling
virStateStop in a thread more directly.
Thus the logic is moved over into virStateStop via a further callback
to be registered by the remote daemon.
Signed-off-by: Daniel P. Berrangé <berrange(a)redhat.com>
---
src/libvirt_remote.syms | 2 +-
src/remote/remote_daemon.c | 40 ++------------------------
src/rpc/virnetdaemon.c | 59 +++++++++++++++++++++++++++++++-------
src/rpc/virnetdaemon.h | 27 +++++++++++++++--
4 files changed, 77 insertions(+), 51 deletions(-)
Reviewed-by: Peter Krempa <pkrempa(a)redhat.com>