[libvirt] [PATCH] storage: prefer using newDef to save configfile
Michal Privoznik
mprivozn at redhat.com
Tue Jul 10 13:27:21 UTC 2018
On 07/10/2018 09:15 AM, Shichangkuo wrote:
> When re-defining an active storage pool, the configfile has not changed. This issue was introduced by bfcd8fc9,
> storage: Use virStoragePoolObjGetDef accessor for driver. So we prefer using newDef to save configfile.
>
> Signed-off-by: Changkuo Shi <shi.changkuo at h3c.com>
> ---
> src/storage/storage_driver.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
The commit message seems to have long lines. Also, next time please send
patch rebased to the latest HEAD. I had to go all the way down to v4.4.0
only to apply this patch cleanly.
>
> diff --git a/src/storage/storage_driver.c b/src/storage/storage_driver.c index b0de96d..fab3c5b 100644
> --- a/src/storage/storage_driver.c
> +++ b/src/storage/storage_driver.c
> @@ -844,13 +844,14 @@ storagePoolDefineXML(virConnectPtr conn,
>
> if (!(obj = virStoragePoolObjAssignDef(driver->pools, newDef)))
> goto cleanup;
> - newDef = NULL;
> + newDef = virStoragePoolObjGetNewDef(obj);
> def = virStoragePoolObjGetDef(obj);
>
> - if (virStoragePoolObjSaveDef(driver, obj, def) < 0) {
> + if (virStoragePoolObjSaveDef(driver, obj, newDef ? newDef : def) < 0) {
Why wouldn't newDef be set at this point? It is always going to be a
non-NULL pointer.
Also, the rest of the function is a bit misleading now.
Long story short, I think the proper solution is to:
s/virStoragePoolObjGetDef/virStoragePoolObjGetNewDef/
actually and do nothing more.
Michal
More information about the libvir-list
mailing list