diff options
author | James Smart <james.smart@emulex.com> | 2011-02-16 12:39:44 -0500 |
---|---|---|
committer | James Bottomley <James.Bottomley@suse.de> | 2011-02-18 13:47:20 -0500 |
commit | 924941444b481fc862b2de5e1dd7692ca85274d7 (patch) | |
tree | 4a19d10d1e8803f3662b93d615c35a474b3d8328 /drivers/scsi/lpfc/lpfc_init.c | |
parent | 1151e3ec15c32021a8a12a123459ab5e41692898 (diff) |
[SCSI] lpfc 8.3.21: FC Discovery changes
FC Discovery changes
- Treat received PLOGI while logged in as a relogin (unregister and reregister).
- Added a timer to delay Nport discovery when clean bit is cleared and Fabric
portname/nodename/FCID is changed.
- Invalidate Port's DID when receiving PLOGI from p2p port with CONFIG_PORT
mailbox command.
Signed-off-by: Alex Iannicelli <alex.iannicelli@emulex.com>
Signed-off-by: James Smart <james.smart@emulex.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/scsi/lpfc/lpfc_init.c')
-rw-r--r-- | drivers/scsi/lpfc/lpfc_init.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/scsi/lpfc/lpfc_init.c b/drivers/scsi/lpfc/lpfc_init.c index 32cd138f6543..5e84d2a6ada6 100644 --- a/drivers/scsi/lpfc/lpfc_init.c +++ b/drivers/scsi/lpfc/lpfc_init.c | |||
@@ -2292,6 +2292,7 @@ lpfc_stop_vport_timers(struct lpfc_vport *vport) | |||
2292 | { | 2292 | { |
2293 | del_timer_sync(&vport->els_tmofunc); | 2293 | del_timer_sync(&vport->els_tmofunc); |
2294 | del_timer_sync(&vport->fc_fdmitmo); | 2294 | del_timer_sync(&vport->fc_fdmitmo); |
2295 | del_timer_sync(&vport->delayed_disc_tmo); | ||
2295 | lpfc_can_disctmo(vport); | 2296 | lpfc_can_disctmo(vport); |
2296 | return; | 2297 | return; |
2297 | } | 2298 | } |
@@ -2733,6 +2734,11 @@ lpfc_create_port(struct lpfc_hba *phba, int instance, struct device *dev) | |||
2733 | init_timer(&vport->els_tmofunc); | 2734 | init_timer(&vport->els_tmofunc); |
2734 | vport->els_tmofunc.function = lpfc_els_timeout; | 2735 | vport->els_tmofunc.function = lpfc_els_timeout; |
2735 | vport->els_tmofunc.data = (unsigned long)vport; | 2736 | vport->els_tmofunc.data = (unsigned long)vport; |
2737 | |||
2738 | init_timer(&vport->delayed_disc_tmo); | ||
2739 | vport->delayed_disc_tmo.function = lpfc_delayed_disc_tmo; | ||
2740 | vport->delayed_disc_tmo.data = (unsigned long)vport; | ||
2741 | |||
2736 | error = scsi_add_host_with_dma(shost, dev, &phba->pcidev->dev); | 2742 | error = scsi_add_host_with_dma(shost, dev, &phba->pcidev->dev); |
2737 | if (error) | 2743 | if (error) |
2738 | goto out_put_shost; | 2744 | goto out_put_shost; |