qemudShutdownVMDaemon() calls qemudRemoveDomainStatus(), which then calls virFileDeletePID(). qemudShutdownVMDaemon() then unnecessarily calls virFileDeletePID() again. Remove this second usage of it, and also slightly refactor qemudRemoveDomainStatus() to VIR_WARN appropriate error messages. Signed-off-by: Chris Lalancette <clalance@xxxxxxxxxx> --- src/qemu/qemu_driver.c | 31 +++++++++---------------------- 1 files changed, 9 insertions(+), 22 deletions(-) diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index fd064af..38fe19e 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -269,7 +269,7 @@ qemudRemoveDomainStatus(virConnectPtr conn, struct qemud_driver *driver, virDomainObjPtr vm) { - int rc = -1; + char ebuf[1024]; char *file = NULL; if (virAsprintf(&file, "%s/%s.xml", driver->stateDir, vm->def->name) < 0) { @@ -277,19 +277,14 @@ qemudRemoveDomainStatus(virConnectPtr conn, goto cleanup; } - if (unlink(file) < 0 && errno != ENOENT && errno != ENOTDIR) { - qemudReportError(conn, vm, NULL, VIR_ERR_INTERNAL_ERROR, - _("Failed to unlink status file %s"), file); - goto cleanup; - } - - if(virFileDeletePid(driver->stateDir, vm->def->name)) - goto cleanup; + if (unlink(file) < 0 && errno != ENOENT && errno != ENOTDIR) + VIR_WARN(_("Failed to remove domain XML for %s: %s"), + vm->def->name, virStrerror(errno, buf, sizeof(ebuf))); + if (virFileDeletePid(driver->stateDir, vm->def->name) != 0) + VIR_WARN(_("Failed to remove PID file for %s: %s"), + vm->def->name, virStrerror(errno, ebuf, sizeof(ebuf))); - rc = 0; -cleanup: - VIR_FREE(file); - return rc; + return 0; } @@ -2224,15 +2219,7 @@ retry: vm->def->name); } - if (qemudRemoveDomainStatus(conn, driver, vm) < 0) { - VIR_WARN(_("Failed to remove domain status for %s"), - vm->def->name); - } - if ((ret = virFileDeletePid(driver->stateDir, vm->def->name)) != 0) { - char ebuf[1024]; - VIR_WARN(_("Failed to remove PID file for %s: %s"), - vm->def->name, virStrerror(errno, ebuf, sizeof ebuf)); - } + qemudRemoveDomainStatus(conn, driver, vm); vm->pid = -1; vm->def->id = -1; -- 1.6.0.6 -- Libvir-list mailing list Libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list