Skip to content

Commit

Permalink
[PATCH] noop-iosched: avoid corrupted request merging
Browse files Browse the repository at this point in the history
Tejun Heo notes:

   "I'm currently debugging this.  The problem is that we are using the
    generic dispatch queue directly in the noop sched and merging is NOT
    allowed on dispatch queues but generic handling of last_merge tries
    to merge requests.  I'm still trying to verify this, so I'll be back
    with results soon."

In the meantime, disable merging for noop by setting REQ_NOMERGE in
elevator_noop_add_request().

Eventually, we should add a noop_list and do the dispatching like in the
other io schedulers.  Merging is still beneficial for noop (and it has
always done it).

Signed-off-by: Jens Axboe <axboe@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
  • Loading branch information
Jens Axboe authored and Linus Torvalds committed Oct 31, 2005
1 parent 4fc2074 commit 581c1b1
Showing 1 changed file with 1 addition and 0 deletions.
1 change: 1 addition & 0 deletions drivers/block/noop-iosched.c
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@

static void elevator_noop_add_request(request_queue_t *q, struct request *rq)
{
rq->flags |= REQ_NOMERGE;
elv_dispatch_add_tail(q, rq);
}

Expand Down

0 comments on commit 581c1b1

Please sign in to comment.