Hi, Michal:

    Do you mean we should also remove "if (!priv->prDaemonRunning)" in qemuProcessKillManagedPRDaemon ? I don't understand why do that, can you tell me more details?

On 2019/5/30 18:22, Michal Privoznik wrote:
On 5/29/19 11:44 AM, Jie Wang wrote:
if libvirt receive DISCONNECTED event and set prDaemonRunning to false,
and qemuDomainRemoveDiskDevice is performing in the meantime.
qemuDomainRemoveDiskDevice will return directly by prDaemonRunning
check, so the pr-helper0 object will remain. I think it is no need to
check prDaemonRunning in qemuHotplugRemoveManagedPR.

Signed-off-by: Jie Wang <wangji...@huawei.com>
---
  src/qemu/qemu_hotplug.c | 3 +--
  1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/qemu/qemu_hotplug.c b/src/qemu/qemu_hotplug.c
index 34249bd030..5e4a929738 100644
--- a/src/qemu/qemu_hotplug.c
+++ b/src/qemu/qemu_hotplug.c
@@ -465,8 +465,7 @@ qemuHotplugRemoveManagedPR(virQEMUDriverPtr driver,
      virErrorPtr orig_err;
      int ret = -1;
  -    if (!priv->prDaemonRunning ||
-        virDomainDefHasManagedPR(vm->def))
+    if (virDomainDefHasManagedPR(vm->def))
          return 0;
        virErrorPreserveLast(&orig_err);


Right, because we unlock the domain object while talking on monitor. Well, in that case I guess we should try harder and also kill the pr-helper process. IOW qemuProcessKillManagedPRDaemon() could use the same treatment.

Michal

.


--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list

Reply via email to