https://bugzilla.redhat.com/show_bug.cgi?id=1356436
Commit id '56057900' altered the discovery of iSCSI node targets by
using the "--op nonpersistent". This caused issues for clean environments
or if by chance a "-m node -o delete" was executed.
Since each iSCSI Storage Pool has the required iSCSI target path, use
that and the virISCSINodeNew API in order to generate the iSCSI node record.
Signed-off-by: John Ferlan <jferlan(a)redhat.com>
---
src/storage/storage_backend_iscsi.c | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/src/storage/storage_backend_iscsi.c b/src/storage/storage_backend_iscsi.c
index bb33da2..84ad6f3 100644
--- a/src/storage/storage_backend_iscsi.c
+++ b/src/storage/storage_backend_iscsi.c
@@ -353,11 +353,10 @@ virStorageBackendISCSIStartPool(virConnectPtr conn,
if ((session = virStorageBackendISCSISession(pool, true)) == NULL) {
if ((portal = virStorageBackendISCSIPortal(&pool->def->source)) ==
NULL)
goto cleanup;
- /*
- * iscsiadm doesn't let you login to a target, unless you've
- * first issued a 'sendtargets' command to the portal :-(
- */
- if (virISCSIScanTargets(portal, NULL, NULL) < 0)
+
+ /* Create a static node record for the IQN target. Must be done
+ * in order for login to the target */
+ if (virISCSINodeNew(portal, pool->def->source.devices[0].path) < 0)
goto cleanup;
if (virStorageBackendISCSISetAuth(portal, conn, &pool->def->source)
< 0)
--
2.5.5