On Fri, Jul 19, 2013 at 02:12:06AM +0000, Wangyufei (A) wrote:
When I shutdown a vm, I found sockets which act as UNIX domain socket
server were not deleted. When I add the following code, it work out.
Signed-off-by: WangYufei
<james.wangyufei@huawei.com<mailto:james.wangyufei@huawei.com>>
---
src/qemu/qemu_process.c | 7 +++++++
1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c
index 3d5e8f6..e794f37 100644
--- a/src/qemu/qemu_process.c
+++ b/src/qemu/qemu_process.c
@@ -4086,6 +4086,13 @@ void qemuProcessStop(virQEMUDriverPtr driver,
priv->monConfig = NULL;
}
+ /* remove socket which acts as UNIX domain socket server */
+ for (i = 0; i < vm->def->nchannels; i++) {
+ if ((vm->def->channels[i]->source.type == VIR_DOMAIN_CHR_TYPE_UNIX)
&&
+ vm->def->channels[i]->source.data.nix.listen)
+ unlink(vm->def->channels[i]->source.data.nix.path);
+ }
+
We should do the same for vm->def->serials, vm->def->parallels
and vm->def->consoles while we're here, since they all are backed
by char-devs.
Daniel
--
|:
http://berrange.com -o-
http://www.flickr.com/photos/dberrange/ :|
|:
http://libvirt.org -o-
http://virt-manager.org :|
|:
http://autobuild.org -o-
http://search.cpan.org/~danberr/ :|
|:
http://entangle-photo.org -o-
http://live.gnome.org/gtk-vnc :|