aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/blkdev.h
diff options
context:
space:
mode:
authorTejun Heo <htejun@gmail.com>2005-10-20 16:46:23 +0200
committerJens Axboe <axboe@nelson.home.kernel.dk>2005-10-28 08:45:20 +0200
commit06b86245c052963029bfd9020ca1f08ceb66f85a (patch)
tree1bd2675aceca74398f5fcf148f6cf2f551d63b52 /include/linux/blkdev.h
parent[PATCH] 02/05: update ioscheds to use generic dispatch queue (diff)
downloadlinux-dev-06b86245c052963029bfd9020ca1f08ceb66f85a.tar.xz
linux-dev-06b86245c052963029bfd9020ca1f08ceb66f85a.zip
[PATCH] 03/05 move last_merge handlin into generic elevator code
Currently, both generic elevator code and specific ioscheds participate in the management and usage of last_merge. This and the following patches move last_merge handling into generic elevator code. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Jens Axboe <axboe@suse.de>
Diffstat (limited to 'include/linux/blkdev.h')
-rw-r--r--include/linux/blkdev.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
index a2e496f285a4..bd55b1df8997 100644
--- a/include/linux/blkdev.h
+++ b/include/linux/blkdev.h
@@ -630,6 +630,9 @@ static inline void blkdev_dequeue_request(struct request *req)
static inline void elv_dispatch_add_tail(struct request_queue *q,
struct request *rq)
{
+ if (q->last_merge == rq)
+ q->last_merge = NULL;
+
q->end_sector = rq_end_sector(rq);
q->boundary_rq = rq;
list_add_tail(&rq->queuelist, &q->queue_head);