From: Nick Piggin drivers/block/as-iosched.c | 9 +++++---- 1 files changed, 5 insertions(+), 4 deletions(-) diff -puN drivers/block/as-iosched.c~as-more-HZ drivers/block/as-iosched.c --- 25/drivers/block/as-iosched.c~as-more-HZ 2003-06-11 18:43:33.000000000 -0700 +++ 25-akpm/drivers/block/as-iosched.c 2003-06-11 18:43:33.000000000 -0700 @@ -929,13 +929,14 @@ void update_write_batch(struct as_data * if (write_time < 0) write_time = 0; - if (write_time > batch + 5 && !ad->write_batch_idled) { - if (write_time > batch * 2) + if (write_time > batch + (HZ/100) && !ad->write_batch_idled) { + if (write_time > batch * 3) ad->write_batch_count /= 2; else ad->write_batch_count--; - } else if (write_time + 5 < batch && ad->current_write_count == 0) { - if (batch > write_time * 2) + } else if (write_time + (HZ/100) < batch + && ad->current_write_count == 0) { + if (batch > write_time * 3) ad->write_batch_count *= 2; else ad->write_batch_count++; _