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>

---

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);

+    }

+

     /* shut it off for sure */

     ignore_value(qemuProcessKill(vm,

                                  VIR_QEMU_PROCESS_KILL_FORCE|

--

1.7.3.1.msysgit.0

 

Best Regards,

-WangYufei