[libvirt] [PATCH] Fix storage pool source comparison to avoid comparing with self

Guido Günther agx at sigxcpu.org
Tue Nov 1 11:08:58 UTC 2011


Hi Daniel,

On Tue, Oct 11, 2011 at 11:26:59AM +0100, Daniel P. Berrange wrote:
> From: "Daniel P. Berrange" <berrange at redhat.com>
> 
> If we are comparing storage pools we must skip comparing with
> ourself, so that re-defining an existing pool works
> 
> * conf/storage_conf.c: Skip self when comparing
> ---
>  src/conf/storage_conf.c |    4 ++++
>  1 files changed, 4 insertions(+), 0 deletions(-)
> 
> diff --git a/src/conf/storage_conf.c b/src/conf/storage_conf.c
> index e893b2d..eb39198 100644
> --- a/src/conf/storage_conf.c
> +++ b/src/conf/storage_conf.c
> @@ -1730,6 +1730,10 @@ int virStoragePoolSourceFindDuplicate(virStoragePoolObjListPtr pools,
>          if (def->type != pool->def->type)
>              continue;
>  
> +        /* Don't mach against ourself if re-defining existing pool ! */
> +        if (STREQ(pool->def->name, def->name))
> +            continue;
> +
>          virStoragePoolObjLock(pool);
>  
>          switch (pool->def->type) {

This one didn't get applied yet but it seems to fix some libvirt-tck
failures. Is this just an omission?
Cheers,
 -- Guido




More information about the libvir-list mailing list