mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-22 10:34:55 +08:00
[SCSI] zfcp: Add port only once to FC transport class
When calling fc_remote_port_add make sure to not call it again before fc_remote_port_delete has been called. In other words, ensure to create a new fc_rport, then delete it, then create a new one again. Reviewed-by: Swen Schillig <swen@vnet.ibm.com> Signed-off-by: Christof Schmitt <christof.schmitt@de.ibm.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
This commit is contained in:
parent
cbf1ed0264
commit
379d6bf657
@ -534,6 +534,9 @@ static void zfcp_scsi_rport_register(struct zfcp_port *port)
|
||||
struct fc_rport_identifiers ids;
|
||||
struct fc_rport *rport;
|
||||
|
||||
if (port->rport)
|
||||
return;
|
||||
|
||||
ids.node_name = port->wwnn;
|
||||
ids.port_name = port->wwpn;
|
||||
ids.port_id = port->d_id;
|
||||
@ -557,8 +560,10 @@ static void zfcp_scsi_rport_block(struct zfcp_port *port)
|
||||
{
|
||||
struct fc_rport *rport = port->rport;
|
||||
|
||||
if (rport)
|
||||
if (rport) {
|
||||
fc_remote_port_delete(rport);
|
||||
port->rport = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
void zfcp_scsi_schedule_rport_register(struct zfcp_port *port)
|
||||
|
Loading…
Reference in New Issue
Block a user