[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 2/6] python/machine: close sock_pair in cleanup path
From: |
John Snow |
Subject: |
[PATCH v2 2/6] python/machine: close sock_pair in cleanup path |
Date: |
Tue, 25 Jul 2023 14:03:33 -0400 |
If everything has gone smoothly, we'll already have closed the socket we
gave to the child during post_launch. The other half of the pair that we
gave to the QMP connection should, likewise, be definitively closed by
now.
However, in the cleanup path, it's possible we've created the socketpair
but flubbed the launch and need to clean up resources. These resources
*would* be handled by the garbage collector, but that can happen at
unpredictable times. Nicer to just clean them up synchronously on the
exit path, here.
Signed-off-by: John Snow <jsnow@redhat.com>
---
python/qemu/machine/machine.py | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/python/qemu/machine/machine.py b/python/qemu/machine/machine.py
index 8be0f684fe..26f0fb8a81 100644
--- a/python/qemu/machine/machine.py
+++ b/python/qemu/machine/machine.py
@@ -395,6 +395,11 @@ def _post_shutdown(self) -> None:
finally:
assert self._qmp_connection is None
+ if self._sock_pair:
+ self._sock_pair[0].close()
+ self._sock_pair[1].close()
+ self._sock_pair = None
+
self._close_qemu_log_file()
self._load_io_log()
--
2.41.0
- Re: [PATCH v2 6/6] python/machine: remove unused sock_dir argument, (continued)
[PATCH v2 4/6] python/machine: use socketpair() for console connections, John Snow, 2023/07/25
[PATCH v2 2/6] python/machine: close sock_pair in cleanup path,
John Snow <=
Re: [PATCH v2 0/6] python/machine: use socketpair() for console socket, Peter Maydell, 2023/07/27