aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/aic7xxx_old.c
diff options
context:
space:
mode:
authorJeff Garzik <jgarzik@pobox.com>2005-05-28 07:57:14 -0400
committerJeff Garzik <jgarzik@pobox.com>2005-06-17 13:05:18 -0400
commitdf0ae2497ddefd72a87f3a3b34ff32455d7d4ae0 (patch)
tree552e02a44a21bd38db91729c85219542c2930ae2 /drivers/scsi/aic7xxx_old.c
parent68b3aa7c9805aee9005a8ca53c5e99177961fbb9 (diff)
[SCSI] allow sleeping in ->eh_host_reset_handler()
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/scsi/aic7xxx_old.c')
-rw-r--r--drivers/scsi/aic7xxx_old.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/scsi/aic7xxx_old.c b/drivers/scsi/aic7xxx_old.c
index 1e83096bb911..fac091e7093c 100644
--- a/drivers/scsi/aic7xxx_old.c
+++ b/drivers/scsi/aic7xxx_old.c
@@ -10845,6 +10845,8 @@ aic7xxx_reset(Scsi_Cmnd *cmd)
10845 struct aic_dev_data *aic_dev; 10845 struct aic_dev_data *aic_dev;
10846 10846
10847 p = (struct aic7xxx_host *) cmd->device->host->hostdata; 10847 p = (struct aic7xxx_host *) cmd->device->host->hostdata;
10848 spin_lock_irq(p->host->host_lock);
10849
10848 aic_dev = AIC_DEV(cmd); 10850 aic_dev = AIC_DEV(cmd);
10849 if(aic7xxx_position(cmd) < p->scb_data->numscbs) 10851 if(aic7xxx_position(cmd) < p->scb_data->numscbs)
10850 { 10852 {
@@ -10884,6 +10886,7 @@ aic7xxx_reset(Scsi_Cmnd *cmd)
10884 * longer have it. 10886 * longer have it.
10885 */ 10887 */
10886 unpause_sequencer(p, FALSE); 10888 unpause_sequencer(p, FALSE);
10889 spin_unlock_irq(p->host->host_lock);
10887 return SUCCESS; 10890 return SUCCESS;
10888 } 10891 }
10889 10892
@@ -10907,7 +10910,6 @@ aic7xxx_reset(Scsi_Cmnd *cmd)
10907 unpause_sequencer(p, FALSE); 10910 unpause_sequencer(p, FALSE);
10908 spin_unlock_irq(p->host->host_lock); 10911 spin_unlock_irq(p->host->host_lock);
10909 ssleep(2); 10912 ssleep(2);
10910 spin_lock_irq(p->host->host_lock);
10911 return SUCCESS; 10913 return SUCCESS;
10912} 10914}
10913 10915