diff options
| author | Jens Axboe <axboe@suse.de> | 2002-08-12 17:54:03 -0700 |
|---|---|---|
| committer | Jens Axboe <axboe@suse.de> | 2002-08-12 17:54:03 -0700 |
| commit | dc513f216436b6af3bd40a3213530ca099e7859b (patch) | |
| tree | a9f1303368b49bf051e91df7e0a09c4ce2fefec8 | |
| parent | dfc3997c05d92b4b4e0cadfd9e2a577fd16e0056 (diff) | |
[PATCH] sym53c8xx_2
The following patch from Anton Blanchard fixes a problem with the
sym53c8xx_2 driver in the 2.5 tree. It assumes that the eh error
handlers are not called with the host lock held, which they are.
| -rw-r--r-- | drivers/scsi/sym53c8xx_2/sym_glue.c | 5 |
1 files changed, 0 insertions, 5 deletions
diff --git a/drivers/scsi/sym53c8xx_2/sym_glue.c b/drivers/scsi/sym53c8xx_2/sym_glue.c index 10e68e096edc..f446ce18feec 100644 --- a/drivers/scsi/sym53c8xx_2/sym_glue.c +++ b/drivers/scsi/sym53c8xx_2/sym_glue.c @@ -1107,7 +1107,6 @@ static void sym_eh_timeout(u_long p) { __sym_eh_done((Scsi_Cmnd *)p, 1); } static int sym_eh_handler(int op, char *opname, Scsi_Cmnd *cmd) { hcb_p np = SYM_SOFTC_PTR(cmd); - unsigned long flags; SYM_QUEHEAD *qp; int to_do = SYM_EH_DO_IGNORE; int sts = -1; @@ -1118,8 +1117,6 @@ static int sym_eh_handler(int op, char *opname, Scsi_Cmnd *cmd) printf_warning("%s: %s operation started.\n", devname, opname); - SYM_LOCK_HCB(np, flags); - #if 0 /* This one should be the result of some race, thus to ignore */ if (cmd->serial_number != cmd->serial_number_at_timeout) @@ -1198,8 +1195,6 @@ finish: if (to_do == SYM_EH_DO_COMPLETE) sym_xpt_done2(np, cmd, CAM_REQ_ABORTED); - SYM_UNLOCK_HCB(np, flags); - /* Wait for completion with locks released, as required by kernel */ if (to_do == SYM_EH_DO_WAIT) { init_timer(&ep->timer); |
