mirror of https://gitee.com/openkylin/linux.git
[SCSI] fc_transport: stop creating duplicate rport entries.
Current fc_transport consumers initially register rports with an UNKNOWN role-state and follow-up with a call to fc_remote_port_rolechg(). Modify code in fc_remote_port_add() to scan the fc_host_rport_bindings() array for consistent bindings regardless of role-type. Original code would only scan bindings array for targets, causing duplicate fc_remote_ports/rport-X:Y-Z entries to be created for the yet-to-be-role-changed rports. Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
This commit is contained in:
parent
eca7be5e18
commit
8b097a6726
|
@ -1498,8 +1498,7 @@ fc_remote_port_add(struct Scsi_Host *shost, int channel,
|
|||
}
|
||||
|
||||
/* Search the bindings array */
|
||||
if (likely((ids->roles & FC_RPORT_ROLE_FCP_TARGET) &&
|
||||
(fc_host_tgtid_bind_type(shost) != FC_TGTID_BIND_NONE))) {
|
||||
if (fc_host_tgtid_bind_type(shost) != FC_TGTID_BIND_NONE) {
|
||||
|
||||
/* search for a matching consistent binding */
|
||||
|
||||
|
|
Loading…
Reference in New Issue