[pve-devel] [PATCH-SERIES common/qemu-server v4 0/2] migration: conntrack: fix race adding dbus-vmstate object to QEMU
Fiona Ebner
f.ebner at proxmox.com
Wed Oct 29 11:06:23 CET 2025
Changes in v4 (thanks to Wolfgang!):
* Also handle abstract socket path.
* Only resend upon EINTR, otherwise the datagram should be sent in one
go.
* Drop unnecessary flush.
* Drop $unset_environment argument.
* Rename to just PVE::Systemd::notify() to make it clear that it's not
the exact same as sd_notify().
* Use POD for documentation.
* Return early if there is no socket path.
* Die if there is no message.
* Check that socket path starts with '/' or '@'.
Changes in v3 (thanks to Thomas!):
* Expand commit message for sd_notify() helper.
* Use $socket->{send,shutdown) methods.
* Print $IO::Socket::errstr in case of error.
* Unset NOTIFY_SOCKET environment variable only after sending the
message.
Changes in v2:
* Dropped already applied patches.
* Introduce sd_notify() helper.
* Different approach, make the service type=notify instead of waiting
in a sleep+check-loop until the object shows up via QMP 'qom-list'.
As reported in the community forum [0], it might happen that the
dbus-vmstate object is not added (quickly enough) to the target QEMU
instance, before the migration state is loaded. This would result in
a crash of the target instance.
[0]: https://forum.proxmox.com/threads/172588/
Dependency bump qemu-server -> pve-common needed.
pve-common:
Fiona Ebner (1):
systemd: add notify() helper
src/PVE/Systemd.pm | 49 ++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 49 insertions(+)
qemu-server:
Fiona Ebner (1):
migration: conntrack: avoid crash when dbus-vmstate object cannot be
added (quickly enough)
src/usr/dbus-vmstate | 3 +++
src/usr/pve-dbus-vmstate at .service | 2 +-
2 files changed, 4 insertions(+), 1 deletion(-)
Summary over all repositories:
3 files changed, 53 insertions(+), 1 deletions(-)
--
Generated by git-murpp 0.5.0
More information about the pve-devel
mailing list