aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/ibmvscsi
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/scsi/ibmvscsi')
-rw-r--r--drivers/scsi/ibmvscsi/ibmvfc.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/scsi/ibmvscsi/ibmvfc.c b/drivers/scsi/ibmvscsi/ibmvfc.c
index f033bf39690f..00d08b25425f 100644
--- a/drivers/scsi/ibmvscsi/ibmvfc.c
+++ b/drivers/scsi/ibmvscsi/ibmvfc.c
@@ -4302,8 +4302,10 @@ static void ibmvfc_do_work(struct ibmvfc_host *vhost)
4302 spin_unlock_irqrestore(vhost->host->host_lock, flags); 4302 spin_unlock_irqrestore(vhost->host->host_lock, flags);
4303 rc = ibmvfc_reset_crq(vhost); 4303 rc = ibmvfc_reset_crq(vhost);
4304 spin_lock_irqsave(vhost->host->host_lock, flags); 4304 spin_lock_irqsave(vhost->host->host_lock, flags);
4305 if (rc || (rc = ibmvfc_send_crq_init(vhost)) || 4305 if (rc == H_CLOSED)
4306 (rc = vio_enable_interrupts(to_vio_dev(vhost->dev)))) { 4306 vio_enable_interrupts(to_vio_dev(vhost->dev));
4307 else if (rc || (rc = ibmvfc_send_crq_init(vhost)) ||
4308 (rc = vio_enable_interrupts(to_vio_dev(vhost->dev)))) {
4307 ibmvfc_link_down(vhost, IBMVFC_LINK_DEAD); 4309 ibmvfc_link_down(vhost, IBMVFC_LINK_DEAD);
4308 dev_err(vhost->dev, "Error after reset (rc=%d)\n", rc); 4310 dev_err(vhost->dev, "Error after reset (rc=%d)\n", rc);
4309 } 4311 }