ide: add helpers for preparing sense requests
authorBorislav Petkov <petkovbb@googlemail.com>
Sat, 18 Apr 2009 22:00:42 +0000 (07:00 +0900)
committerJens Axboe <jens.axboe@oracle.com>
Tue, 28 Apr 2009 05:37:30 +0000 (07:37 +0200)
commite69d800f7e8797a8e3423380ee9d8ca1cb90c388
tree4f2241b44bf56db7e8f977b742a5e56f53424596
parent1f181d2b1569dfb88a584a6e1847e9e1c7645951
ide: add helpers for preparing sense requests

This is in preparation of removing the queueing of a sense request out
of the IRQ handler path.

Use struct request_sense as a general sense buffer for all ATAPI
devices ide-{floppy,tape,cd}.

tj: * blk_get_request(__GFP_WAIT) can't be called from do_request() as
      it can cause deadlock.  Converted to use inline struct request
      and blk_rq_init().

    * Added xfer / cdb len selection depending on device type.

    * All sense prep logics folded into ide_prep_sense() which never
      fails.

    * hwif->rq clearing and sense_rq used handling moved into
      ide_queue_sense_rq().

    * blk_rq_map_kern() conversion is moved to later patch.

CC: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
CC: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Signed-off-by: Borislav Petkov <petkovbb@gmail.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
drivers/ide/ide-atapi.c
include/linux/ide.h