ide: another possible ide panic fix for blk-end-request
authorKiyoshi Ueda <k-ueda@ct.jp.nec.com>
Sun, 10 Feb 2008 23:32:11 +0000 (00:32 +0100)
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Sun, 10 Feb 2008 23:32:11 +0000 (00:32 +0100)
commit3b0e044d5a881c937293a045158149514b86783c
treebdd78f0e2e7774d72f04862641e67f1421b90553
parent0eccf60bfa9190d1588b2bf07d23d7b9b3a19d9e
ide: another possible ide panic fix for blk-end-request

I have reviewed all blk-end-request patches again to confirm whether
there are any similar problems with the last week's ide-cd panic:
    http://lkml.org/lkml/2008/1/29/140

And I found a possible similar bug in ide-io change:
ide_end_drive_cmd() could be called for blk_pc_request() which could
have bios.  To complete such requests correctly, we need to pass
the actual size of the request.
Otherwise, __blk_end_request() returns 1 because the request still has
bios, and the system will BUG() unnecessarily.

The following patch fixes the bug and should be applied on top of
Linus' git.

Signed-off-by: Kiyoshi Ueda <k-ueda@ct.jp.nec.com>
Signed-off-by: Jun'ichi Nomura <j-nomura@ce.jp.nec.com>
Cc: Borislav Petkov <petkovbb@googlemail.com>
Cc: Jens Axboe <jens.axboe@oracle.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
drivers/ide/ide-io.c