ide-cd: fix leftover data BUG
authorJens Axboe <jens.axboe@oracle.com>
Thu, 31 Jan 2008 12:57:51 +0000 (13:57 +0100)
committerJens Axboe <jens.axboe@oracle.com>
Fri, 1 Feb 2008 08:26:33 +0000 (09:26 +0100)
It's perfectly legal to have data leftovers when a drive signals
completion, it happens all the time when a user issues a command
with a transfer count that is too large.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
drivers/ide/ide-cd.c

index 74c6087ada38a99714011f84f18a0c05f9b69666..bee05a3f52aeabfe90f45b600f60c6f9f39f26d2 100644 (file)
@@ -1722,7 +1722,7 @@ static ide_startstop_t cdrom_newpc_intr(ide_drive_t *drive)
         */
        if ((stat & DRQ_STAT) == 0) {
                spin_lock_irqsave(&ide_lock, flags);
-               if (__blk_end_request(rq, 0, 0))
+               if (__blk_end_request(rq, 0, rq->data_len))
                        BUG();
                HWGROUP(drive)->rq = NULL;
                spin_unlock_irqrestore(&ide_lock, flags);