aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/net/fc.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/net/fc.c b/src/net/fc.c
index 33e13bdaf..d5761c89e 100644
--- a/src/net/fc.c
+++ b/src/net/fc.c
@@ -907,8 +907,9 @@ int fc_port_login ( struct fc_port *port, struct fc_port_id *port_id,
sizeof ( port->link_node_wwn ) ) != 0 ) ||
( memcmp ( &port->link_port_wwn, link_port_wwn,
sizeof ( port->link_port_wwn ) ) != 0 ) ||
- ( memcmp ( &port->port_id, port_id,
- sizeof ( port->port_id ) ) != 0 ) ) ) {
+ ( has_fabric &&
+ ( memcmp ( &port->port_id, port_id,
+ sizeof ( port->port_id ) ) != 0 ) ) ) ) {
fc_port_logout ( port, 0 );
}