diff options
author | Jeff Garzik <jgarzik@pobox.com> | 2005-05-28 07:57:14 -0400 |
---|---|---|
committer | Jeff Garzik <jgarzik@pobox.com> | 2005-06-17 13:05:18 -0400 |
commit | df0ae2497ddefd72a87f3a3b34ff32455d7d4ae0 (patch) | |
tree | 552e02a44a21bd38db91729c85219542c2930ae2 /drivers/fc4/fc.c | |
parent | 68b3aa7c9805aee9005a8ca53c5e99177961fbb9 (diff) |
[SCSI] allow sleeping in ->eh_host_reset_handler()
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/fc4/fc.c')
-rw-r--r-- | drivers/fc4/fc.c | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/drivers/fc4/fc.c b/drivers/fc4/fc.c index cdea598d0c1b..fbd9ff79b7b8 100644 --- a/drivers/fc4/fc.c +++ b/drivers/fc4/fc.c | |||
@@ -1005,13 +1005,7 @@ int fcp_scsi_dev_reset(Scsi_Cmnd *SCpnt) | |||
1005 | return SUCCESS; | 1005 | return SUCCESS; |
1006 | } | 1006 | } |
1007 | 1007 | ||
1008 | int fcp_scsi_bus_reset(Scsi_Cmnd *SCpnt) | 1008 | static int __fcp_scsi_host_reset(Scsi_Cmnd *SCpnt) |
1009 | { | ||
1010 | printk ("FC: bus reset!\n"); | ||
1011 | return FAILED; | ||
1012 | } | ||
1013 | |||
1014 | int fcp_scsi_host_reset(Scsi_Cmnd *SCpnt) | ||
1015 | { | 1009 | { |
1016 | fc_channel *fc = FC_SCMND(SCpnt); | 1010 | fc_channel *fc = FC_SCMND(SCpnt); |
1017 | fcp_cmnd *fcmd = FCP_CMND(SCpnt); | 1011 | fcp_cmnd *fcmd = FCP_CMND(SCpnt); |
@@ -1032,6 +1026,17 @@ int fcp_scsi_host_reset(Scsi_Cmnd *SCpnt) | |||
1032 | else return FAILED; | 1026 | else return FAILED; |
1033 | } | 1027 | } |
1034 | 1028 | ||
1029 | int fcp_scsi_host_reset(Scsi_Cmnd *SCpnt) | ||
1030 | { | ||
1031 | int rc; | ||
1032 | |||
1033 | spin_lock_irqsave(SCpnt->device->host->host_lock, flags); | ||
1034 | rc = __fcp_scsi_host_reset(SCpnt); | ||
1035 | spin_unlock_irqrestore(SCpnt->device->host->host_lock, flags); | ||
1036 | |||
1037 | return rc; | ||
1038 | } | ||
1039 | |||
1035 | static int fcp_els_queue_it(fc_channel *fc, fcp_cmnd *fcmd) | 1040 | static int fcp_els_queue_it(fc_channel *fc, fcp_cmnd *fcmd) |
1036 | { | 1041 | { |
1037 | long i; | 1042 | long i; |