From: FUJITA Tomonori Date: Fri, 9 Jul 2010 00:38:25 +0000 (+0900) Subject: block: set up rq->rq_disk properly for flush requests X-Git-Tag: v2.6.36-rc1~288^2~34 X-Git-Url: http://bbs.cooldavid.org/git/?a=commitdiff_plain;h=16f2319fd67b169c0b34391d3fa0870fff129891;p=net-next-2.6.git block: set up rq->rq_disk properly for flush requests q->bar_rq.rq_disk is NULL. Use the rq_disk of the original request instead. Signed-off-by: FUJITA Tomonori Signed-off-by: Jens Axboe --- diff --git a/block/blk-barrier.c b/block/blk-barrier.c index d95a1440e29..f0faefca032 100644 --- a/block/blk-barrier.c +++ b/block/blk-barrier.c @@ -136,7 +136,7 @@ static void queue_flush(struct request_queue *q, unsigned which) blk_rq_init(q, rq); rq->cmd_type = REQ_TYPE_FS; rq->cmd_flags = REQ_HARDBARRIER | REQ_FLUSH; - rq->rq_disk = q->bar_rq.rq_disk; + rq->rq_disk = q->orig_bar_rq->rq_disk; rq->end_io = end_io; elv_insert(q, rq, ELEVATOR_INSERT_FRONT);