On 02.07.2015 15:18, Erik Skultety wrote: > Commit 2a31c5f0 introduced support for storage pool state XMLs, however > it also introduced a regression: > > if (!virstoragePoolObjIsActive(pool)) { > virStoragePoolObjUnlock(pool); > continue; > } > > The idea behind this was that since we've got state XMLs and the pool > wasn't marked as active by autostart routine (if the autostart flag had been > set earlier), the pool is inactive and we can leave it be and continue with > other pools. However, filesystem type pools like fs,dir, possibly netfs are > supposed to be active if the filesystem is mounted on the host. And this is > exactly where the regression occurs, e.g. pool type 'dir' which has been > previously destroyed and marked as !autostart gets filtered out > by the condition above. > The resolution should be simply to remove the condition completely, > all pools will get their 'active' flag updated by check callback and if > they do not support such callback, the logic doesn't change and such > pools will be inactive by default (e.g. RBD, even if a state XML exists). > > Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1238610 > --- > src/storage/storage_driver.c | 5 ----- > 1 file changed, 5 deletions(-) > > diff --git a/src/storage/storage_driver.c b/src/storage/storage_driver.c > index e600514..d3cdbc5 100644 > --- a/src/storage/storage_driver.c > +++ b/src/storage/storage_driver.c > @@ -142,11 +142,6 @@ storagePoolUpdateAllState(void) > virStoragePoolObjPtr pool = driver->pools.objs[i]; > > virStoragePoolObjLock(pool); > - if (!virStoragePoolObjIsActive(pool)) { > - virStoragePoolObjUnlock(pool); > - continue; > - } > - > storagePoolUpdateState(pool); > virStoragePoolObjUnlock(pool); > } > ACK Michal -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list