[SCSI] ibmvfc: Handle Virtual I/O Server reboot
authorBrian King <brking@linux.vnet.ibm.com>
Tue, 21 Sep 2010 15:17:11 +0000 (10:17 -0500)
committerJames Bottomley <James.Bottomley@suse.de>
Thu, 7 Oct 2010 22:17:06 +0000 (17:17 -0500)
commitd24099df9e379b150c164da354b8c6fdafc73257
tree8477826140d799ae23b0fe14b993512923c7934b
parent1a03ae0f556a931aa3747b70e44b78308f5b0590
[SCSI] ibmvfc: Handle Virtual I/O Server reboot

If a Virtual I/O server is rebooted, the client fibre channel sees a
transport event on its CRQ, which causes it to attempt to reconnect
to the CRQ. For a period of time during the VIOS reboot, the client's
attempts to register the CRQ will return H_CLOSED, indicating the server
side is not currently registered. The ibmvfc driver was not handling
this well and was taking the virtual adapter offline. Fix this by
re-enabling our interrupt and waiting for the event on our CRQ
indicating the server is back, at which point we can reconnect.

Signed-off-by: Brian King <brking@linux.vnet.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
drivers/scsi/ibmvscsi/ibmvfc.c