diff options
-rw-r--r-- | drivers/ide/ide-taskfile.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/ide/ide-taskfile.c b/drivers/ide/ide-taskfile.c index 0606bd2f6020..9233b8109a0f 100644 --- a/drivers/ide/ide-taskfile.c +++ b/drivers/ide/ide-taskfile.c | |||
@@ -375,7 +375,13 @@ static void task_end_request(ide_drive_t *drive, struct request *rq, u8 stat) | |||
375 | } | 375 | } |
376 | } | 376 | } |
377 | 377 | ||
378 | ide_end_request(drive, 1, rq->hard_nr_sectors); | 378 | if (rq->rq_disk) { |
379 | ide_driver_t *drv; | ||
380 | |||
381 | drv = *(ide_driver_t **)rq->rq_disk->private_data;; | ||
382 | drv->end_request(drive, 1, rq->hard_nr_sectors); | ||
383 | } else | ||
384 | ide_end_request(drive, 1, rq->hard_nr_sectors); | ||
379 | } | 385 | } |
380 | 386 | ||
381 | /* | 387 | /* |