On Thu, Jun 11, 2026 at 01:13:23AM +0400, marcandre.lureau@redhat.com wrote:
On Wed, 10 Jun 2026 13:34:07 +0100, Daniel P. Berrangé <berrange@redhat.com> wrote:
diff --git a/monitor/monitor-internal.h b/monitor/monitor-internal.h index a82e1aacb61..2e8e5ec721e 100644 --- a/monitor/monitor-internal.h +++ b/monitor/monitor-internal.h @@ -134,6 +134,7 @@ struct Monitor { char *chardev_id; CharFrontend chr; int suspend_cnt; /* Needs to be accessed atomically */ + bool dead; /* awaiting drain after monitor-remove */
I haven't looked into the details, but 'dead' is never read here, ..
This is obsolete and should have been removed.
@@ -178,6 +179,7 @@ struct MonitorQMP { Monitor parent_obj; JSONMessageParser parser; bool pretty; + bool setup_pending; /* iothread BH has not yet set up chardev handlers */
and 'setup_pending' is never set.
I should have been setting & clearing this across the BH that sets up the chardev in I/O thread mode. With regards, Daniel -- |: https://berrange.com ~~ https://hachyderm.io/@berrange :| |: https://libvirt.org ~~ https://entangle-photo.org :| |: https://pixelfed.art/berrange ~~ https://fstop138.berrange.com :|