[SCSI] fnic: host reset returns nonzero value(errno) on success
authorNarsimhulu Musini <nmusini@cisco.com>
Fri, 13 Sep 2013 00:45:41 +0000 (17:45 -0700)
committerJames Bottomley <JBottomley@Parallels.com>
Fri, 25 Oct 2013 08:57:56 +0000 (09:57 +0100)
Fixed appropriate error codes that returns negative error number on failure,
and 0 on success. fnic_reset() is used directly by the fc transport callback
issue_fc_host_lip which requires a negative error number on failure.

Signed-off-by: Narsimhulu Musini <nmusini@cisco.com>
Signed-off-by: Hiral Patel <hiralpat@cisco.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
drivers/scsi/fnic/fnic_scsi.c

index d014aae19134624824190305040df9ee37fcbf1d..50f3b327bd1e3ca2c798fde6fd6ff53ddad7a585 100644 (file)
@@ -2207,7 +2207,7 @@ int fnic_reset(struct Scsi_Host *shost)
 {
        struct fc_lport *lp;
        struct fnic *fnic;
-       int ret = SUCCESS;
+       int ret = 0;
 
        lp = shost_priv(shost);
        fnic = lport_priv(lp);
@@ -2219,12 +2219,11 @@ int fnic_reset(struct Scsi_Host *shost)
         * Reset local port, this will clean up libFC exchanges,
         * reset remote port sessions, and if link is up, begin flogi
         */
-       if (lp->tt.lport_reset(lp))
-               ret = FAILED;
+       ret = lp->tt.lport_reset(lp);
 
        FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
                      "Returning from fnic reset %s\n",
-                     (ret == SUCCESS) ?
+                     (ret == 0) ?
                      "SUCCESS" : "FAILED");
 
        return ret;
@@ -2251,7 +2250,7 @@ int fnic_host_reset(struct scsi_cmnd *sc)
         * scsi-ml tries to send a TUR to every device if host reset is
         * successful, so before returning to scsi, fabric should be up
         */
-       ret = fnic_reset(shost);
+       ret = (fnic_reset(shost) == 0) ? SUCCESS : FAILED;
        if (ret == SUCCESS) {
                wait_host_tmo = jiffies + FNIC_HOST_RESET_SETTLE_TIME * HZ;
                ret = FAILED;