[libvirt] [PATCH] Remove redundant virFileDeletePID() call

Cole Robinson crobinso at redhat.com
Tue Nov 3 15:12:06 UTC 2009


On 11/03/2009 07:35 AM, Chris Lalancette wrote:
> 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 at redhat.com>
> ---
>  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;

ACK

- Cole




More information about the libvir-list mailing list