mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-23 14:15:28 +00:00
virISCSIDirectRefreshVol: Don't clear volumes in each run
When fetching LUNs from iscsi server the virISCSIDirectReportLuns() is called. This function does some libiscsi calls and then calls virISCSIDirectRefreshVol() over each LUN found. It's unfortunate that the latter calls virStoragePoolObjClearVols() as we lose all LUNs processed in previous iterations. Signed-off-by: Michal Privoznik <mprivozn@redhat.com> Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
This commit is contained in:
parent
6097d1c8d2
commit
bf5cf610f2
@ -309,7 +309,6 @@ virISCSIDirectRefreshVol(virStoragePoolObjPtr pool,
|
||||
uint32_t nb_block;
|
||||
VIR_AUTOPTR(virStorageVolDef) vol = NULL;
|
||||
|
||||
virStoragePoolObjClearVols(pool);
|
||||
if (virISCSIDirectTestUnitReady(iscsi, lun) < 0)
|
||||
return -1;
|
||||
|
||||
@ -376,6 +375,7 @@ virISCSIDirectReportLuns(virStoragePoolObjPtr pool,
|
||||
|
||||
def->capacity = 0;
|
||||
def->allocation = 0;
|
||||
virStoragePoolObjClearVols(pool);
|
||||
for (i = 0; i < list->num; i++) {
|
||||
if (virISCSIDirectRefreshVol(pool, iscsi, list->luns[i], portal) < 0)
|
||||
goto cleanup;
|
||||
|
Loading…
Reference in New Issue
Block a user