[SCSI] libsas: reindent sas_queuecommand
authorChristoph Hellwig <hch@infradead.org>
Mon, 11 Jul 2011 18:49:24 +0000 (14:49 -0400)
committerJames Bottomley <JBottomley@Parallels.com>
Tue, 30 Aug 2011 19:12:22 +0000 (12:12 -0700)
Switch sas_queuecommand to a normal indentation and goto based error handling.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
drivers/scsi/libsas/sas_scsi_host.c

index ba3acd416addc2ccbe344239f7e3044ff535faa6..9dd1e9eda19b0964ceb99a1d8bd962064a63ad59 100644 (file)
@@ -184,56 +184,51 @@ int sas_queue_up(struct sas_task *task)
 
 int sas_queuecommand(struct Scsi_Host *host, struct scsi_cmnd *cmd)
 {
-       int res = 0;
-       struct domain_device *dev = cmd_to_domain_dev(cmd);
        struct sas_internal *i = to_sas_internal(host->transportt);
+       struct domain_device *dev = cmd_to_domain_dev(cmd);
+       struct sas_ha_struct *sas_ha = dev->port->ha;
+       struct sas_task *task;
+       int res = 0;
 
-       {
-               struct sas_ha_struct *sas_ha = dev->port->ha;
-               struct sas_task *task;
-
-               /* If the device fell off, no sense in issuing commands */
-               if (dev->gone) {
-                       cmd->result = DID_BAD_TARGET << 16;
-                       cmd->scsi_done(cmd);
-                       goto out;
-               }
+       /* If the device fell off, no sense in issuing commands */
+       if (dev->gone) {
+               cmd->result = DID_BAD_TARGET << 16;
+               goto out_done;
+       }
 
-               if (dev_is_sata(dev)) {
-                       unsigned long flags;
+       if (dev_is_sata(dev)) {
+               unsigned long flags;
 
-                       spin_lock_irqsave(dev->sata_dev.ap->lock, flags);
-                       res = ata_sas_queuecmd(cmd, dev->sata_dev.ap);
-                       spin_unlock_irqrestore(dev->sata_dev.ap->lock, flags);
-                       goto out;
-               }
+               spin_lock_irqsave(dev->sata_dev.ap->lock, flags);
+               res = ata_sas_queuecmd(cmd, dev->sata_dev.ap);
+               spin_unlock_irqrestore(dev->sata_dev.ap->lock, flags);
+               return res;
+       }
 
-               res = -ENOMEM;
-               task = sas_create_task(cmd, dev, GFP_ATOMIC);
-               if (!task)
-                       goto out;
+       task = sas_create_task(cmd, dev, GFP_ATOMIC);
+       if (!task)
+               return -ENOMEM;
 
-               /* Queue up, Direct Mode or Task Collector Mode. */
-               if (sas_ha->lldd_max_execute_num < 2)
-                       res = i->dft->lldd_execute_task(task, 1, GFP_ATOMIC);
-               else
-                       res = sas_queue_up(task);
+       /* Queue up, Direct Mode or Task Collector Mode. */
+       if (sas_ha->lldd_max_execute_num < 2)
+               res = i->dft->lldd_execute_task(task, 1, GFP_ATOMIC);
+       else
+               res = sas_queue_up(task);
 
-               /* Examine */
-               if (res) {
-                       SAS_DPRINTK("lldd_execute_task returned: %d\n", res);
-                       ASSIGN_SAS_TASK(cmd, NULL);
-                       sas_free_task(task);
-                       if (res == -SAS_QUEUE_FULL) {
-                               cmd->result = DID_SOFT_ERROR << 16; /* retry */
-                               res = 0;
-                               cmd->scsi_done(cmd);
-                       }
-                       goto out;
-               }
-       }
-out:
-       return res;
+       if (res)
+               goto out_free_task;
+       return 0;
+
+out_free_task:
+       SAS_DPRINTK("lldd_execute_task returned: %d\n", res);
+       ASSIGN_SAS_TASK(cmd, NULL);
+       sas_free_task(task);
+       if (res != -SAS_QUEUE_FULL)
+               return res;
+       cmd->result = DID_SOFT_ERROR << 16; /* retry */
+out_done:
+       cmd->scsi_done(cmd);
+       return 0;
 }
 
 static void sas_eh_finish_cmd(struct scsi_cmnd *cmd)