diff options
author | Kukjin Kim <kgene.kim@samsung.com> | 2014-05-30 13:36:49 -0400 |
---|---|---|
committer | Kukjin Kim <kgene.kim@samsung.com> | 2014-05-30 13:36:49 -0400 |
commit | fced6dee29f6fb143fe16ea90331176ff77e6120 (patch) | |
tree | 5b6e57e7a757adc2a6518ce291a4d2914397b917 /drivers/scsi/scsi_lib.c | |
parent | bfed1074f213051e94648bfad0d0611a16d81366 (diff) | |
parent | be1f7c8d7e2bc8b8c76846aa6f276e8d2ef8975a (diff) |
Merge branch 'v3.16-next/cleanup-samsung' into v3.16-next/platform-exynos
Diffstat (limited to 'drivers/scsi/scsi_lib.c')
-rw-r--r-- | drivers/scsi/scsi_lib.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c index 65a123d9c676..9db097a28a74 100644 --- a/drivers/scsi/scsi_lib.c +++ b/drivers/scsi/scsi_lib.c | |||
@@ -137,6 +137,7 @@ static void __scsi_queue_insert(struct scsi_cmnd *cmd, int reason, int unbusy) | |||
137 | * lock such that the kblockd_schedule_work() call happens | 137 | * lock such that the kblockd_schedule_work() call happens |
138 | * before blk_cleanup_queue() finishes. | 138 | * before blk_cleanup_queue() finishes. |
139 | */ | 139 | */ |
140 | cmd->result = 0; | ||
140 | spin_lock_irqsave(q->queue_lock, flags); | 141 | spin_lock_irqsave(q->queue_lock, flags); |
141 | blk_requeue_request(q, cmd->request); | 142 | blk_requeue_request(q, cmd->request); |
142 | kblockd_schedule_work(q, &device->requeue_work); | 143 | kblockd_schedule_work(q, &device->requeue_work); |
@@ -1044,6 +1045,7 @@ static int scsi_init_sgtable(struct request *req, struct scsi_data_buffer *sdb, | |||
1044 | */ | 1045 | */ |
1045 | int scsi_init_io(struct scsi_cmnd *cmd, gfp_t gfp_mask) | 1046 | int scsi_init_io(struct scsi_cmnd *cmd, gfp_t gfp_mask) |
1046 | { | 1047 | { |
1048 | struct scsi_device *sdev = cmd->device; | ||
1047 | struct request *rq = cmd->request; | 1049 | struct request *rq = cmd->request; |
1048 | 1050 | ||
1049 | int error = scsi_init_sgtable(rq, &cmd->sdb, gfp_mask); | 1051 | int error = scsi_init_sgtable(rq, &cmd->sdb, gfp_mask); |
@@ -1091,7 +1093,7 @@ err_exit: | |||
1091 | scsi_release_buffers(cmd); | 1093 | scsi_release_buffers(cmd); |
1092 | cmd->request->special = NULL; | 1094 | cmd->request->special = NULL; |
1093 | scsi_put_command(cmd); | 1095 | scsi_put_command(cmd); |
1094 | put_device(&cmd->device->sdev_gendev); | 1096 | put_device(&sdev->sdev_gendev); |
1095 | return error; | 1097 | return error; |
1096 | } | 1098 | } |
1097 | EXPORT_SYMBOL(scsi_init_io); | 1099 | EXPORT_SYMBOL(scsi_init_io); |
@@ -1273,7 +1275,7 @@ int scsi_prep_return(struct request_queue *q, struct request *req, int ret) | |||
1273 | struct scsi_cmnd *cmd = req->special; | 1275 | struct scsi_cmnd *cmd = req->special; |
1274 | scsi_release_buffers(cmd); | 1276 | scsi_release_buffers(cmd); |
1275 | scsi_put_command(cmd); | 1277 | scsi_put_command(cmd); |
1276 | put_device(&cmd->device->sdev_gendev); | 1278 | put_device(&sdev->sdev_gendev); |
1277 | req->special = NULL; | 1279 | req->special = NULL; |
1278 | } | 1280 | } |
1279 | break; | 1281 | break; |