mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-01-19 14:03:49 +03:00
viriscsi: Need to sendtargets on Initiator IQN
https://bugzilla.redhat.com/show_bug.cgi?id=1172015 The refactoring done as part of commit id '59446096' caused a regression for the multi initiator IQN commit '6aabcb5b' because the sendtargets was not done on/for the initiator IQN prior to login (or trying to disable autologin) Prior to that commit, the paths were essentially virStorageBackendISCSIStartPool virStorageBackendISCSILogin virStorageBackendISCSIConnection if initiatoriqn virStorageBackendCreateIfaceIQN Issue sendtargets Perform --login else Issue sendtargets Perform --login After that commit: virStorageBackendISCSIStartPool Issue sendtargets Call virStorageBackendISCSIConnection If initiatoriqn virStorageBackendCreateIfaceIQN Perform --login else Perform --login So for non initiator IQN paths, nothing changed. For the initiator path, the --login fails as does any attempts to change autologin via "--op update --name node.startup --value manual".
This commit is contained in:
parent
8832e2d412
commit
729251692f
@ -295,10 +295,17 @@ virISCSIConnection(const char *portal,
|
||||
VIR_DEBUG("ifacename: '%s'", ifacename);
|
||||
break;
|
||||
case IQN_MISSING:
|
||||
if (virStorageBackendCreateIfaceIQN(initiatoriqn,
|
||||
&ifacename) != 0) {
|
||||
if (virStorageBackendCreateIfaceIQN(initiatoriqn, &ifacename) != 0)
|
||||
goto cleanup;
|
||||
}
|
||||
/*
|
||||
* iscsiadm doesn't let you send commands to the Interface IQN,
|
||||
* unless you've first issued a 'sendtargets' command to the
|
||||
* portal. Without the sendtargets all that is received is a
|
||||
* "iscsiadm: No records found"
|
||||
*/
|
||||
if (virISCSIScanTargets(portal, initiatoriqn, NULL, NULL) < 0)
|
||||
goto cleanup;
|
||||
|
||||
break;
|
||||
case IQN_ERROR:
|
||||
default:
|
||||
|
Loading…
x
Reference in New Issue
Block a user