[SCSI] fcoe: fix broken fcoe interface reset
authorVasu Dev <vasu.dev@intel.com>
Fri, 25 Feb 2011 23:03:28 +0000 (15:03 -0800)
committerJames Bottomley <James.Bottomley@suse.de>
Tue, 1 Mar 2011 00:34:18 +0000 (18:34 -0600)
commitd2f809528a3534ea295b6d855c33cbbb3369d8c9
treea8684bca5fc993b2b2ac97bb27490b27d790a50f
parentf2f96d20708c53c6825f842beb7bed06f5f15aca
[SCSI] fcoe: fix broken fcoe interface reset

Reset using "fcoeadm -r" also needs to restart FIP before
doing libfc lport reset, this is needed for new switch firmware
requiring FIP solicitation before doing FLOGI again during reset.
So this patch does this by doing fcoe_ctlr_link_down and then
fcoe_ctlr_link_up to reset the interface.

The fcoe_ctlr_link_down call path also does lport reset
and then fcoe_ctlr_link_up re-starts the fabric login after
doing FIP solicitation first to get reset feature working
again.

Signed-off-by: Vasu Dev <vasu.dev@intel.com>
Tested-by: Ross Brattain <ross.b.brattain@intel.com>
Signed-off-by: Robert Love <robert.w.love@intel.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
drivers/scsi/fcoe/fcoe.c