ide: pass number of bytes to complete to ide_complete_rq()
[deliverable/linux.git] / drivers / ide / ide-io.c
index 4a79d28600f50a29a183b4da349b4f5f945754b8..a4aa4bf847382ddcfc30ffe06cf5a02d69e3054c 100644 (file)
@@ -141,13 +141,13 @@ void ide_complete_cmd(ide_drive_t *drive, struct ide_cmd *cmd, u8 stat, u8 err)
                kfree(cmd);
 }
 
-int ide_complete_rq(ide_drive_t *drive, int error)
+int ide_complete_rq(ide_drive_t *drive, int error, unsigned int nr_bytes)
 {
        ide_hwif_t *hwif = drive->hwif;
        struct request *rq = hwif->rq;
        int rc;
 
-       rc = blk_end_request(rq, error, blk_rq_bytes(rq));
+       rc = blk_end_request(rq, error, nr_bytes);
        if (rc == 0)
                hwif->rq = NULL;
 
@@ -164,7 +164,7 @@ void ide_kill_rq(ide_drive_t *drive, struct request *rq)
 
        if ((media == ide_floppy || media == ide_tape) && drv_req) {
                rq->errors = 0;
-               ide_complete_rq(drive, 0);
+               ide_complete_rq(drive, 0, blk_rq_bytes(rq));
        } else {
                if (media == ide_tape)
                        rq->errors = IDE_DRV_ERROR_GENERAL;
@@ -312,7 +312,7 @@ static ide_startstop_t execute_drive_cmd (ide_drive_t *drive,
        printk("%s: DRIVE_CMD (null)\n", drive->name);
 #endif
        rq->errors = 0;
-       ide_complete_rq(drive, 0);
+       ide_complete_rq(drive, 0, blk_rq_bytes(rq));
 
        return ide_stopped;
 }
This page took 0.025107 seconds and 5 git commands to generate.