diff options
Diffstat (limited to 'drivers/scsi/stex.c')
-rw-r--r-- | drivers/scsi/stex.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/drivers/scsi/stex.c b/drivers/scsi/stex.c index f1ba7f5b52a8..e6420f2127ce 100644 --- a/drivers/scsi/stex.c +++ b/drivers/scsi/stex.c @@ -574,7 +574,7 @@ static void return_abnormal_state(struct st_hba *hba, int status) if (ccb->cmd) { scsi_dma_unmap(ccb->cmd); ccb->cmd->result = status << 16; - ccb->cmd->scsi_done(ccb->cmd); + scsi_done(ccb->cmd); ccb->cmd = NULL; } } @@ -590,9 +590,9 @@ stex_slave_config(struct scsi_device *sdev) return 0; } -static int -stex_queuecommand_lck(struct scsi_cmnd *cmd, void (*done)(struct scsi_cmnd *)) +static int stex_queuecommand_lck(struct scsi_cmnd *cmd) { + void (*done)(struct scsi_cmnd *) = scsi_done; struct st_hba *hba; struct Scsi_Host *host; unsigned int id, lun; @@ -688,8 +688,6 @@ stex_queuecommand_lck(struct scsi_cmnd *cmd, void (*done)(struct scsi_cmnd *)) break; } - cmd->scsi_done = done; - tag = scsi_cmd_to_rq(cmd)->tag; if (unlikely(tag >= host->can_queue)) @@ -764,7 +762,7 @@ static void stex_scsi_done(struct st_ccb *ccb) } cmd->result = result; - cmd->scsi_done(cmd); + scsi_done(cmd); } static void stex_copy_data(struct st_ccb *ccb, |