Re: performance regression from block merge

From: Jens Axboe
Date: Thu Dec 21 2006 - 14:46:07 EST


On Thu, Dec 21 2006, Jens Axboe wrote:
> On Thu, Dec 21 2006, Andrew Morton wrote:
> >
> > Jens, elapsed time for `mke2fs /dev/hdc5' with the anticipatory scheduler
> > (at least) has gone from nine seconds to sixty as a result of the recent
> > block merge.
>
> About when? I'll double check and test here, I'm assuming you mean since
> 2.6.19?

Auch, brown paper bag time, I spotted an obvious typo in the recent
merge. Does this fix it? It should be safe to kill the ->special check,
but lets leave that for another time.

diff --git a/block/elevator.c b/block/elevator.c
index 62c7a30..536be74 100644
--- a/block/elevator.c
+++ b/block/elevator.c
@@ -82,7 +82,7 @@ inline int elv_rq_merge_ok(struct reques
/*
* must be same device and not a special request
*/
- if (rq->rq_disk != bio->bi_bdev->bd_disk || !rq->special)
+ if (rq->rq_disk != bio->bi_bdev->bd_disk || rq->special)
return 0;

if (!elv_iosched_allow_merge(rq, bio))

--
Jens Axboe

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/