Re: spindown [was Re: 2.4.6-pre2, pre3 VM Behavior]

Rik van Riel (riel@conectiva.com.br)
Sat, 16 Jun 2001 18:06:48 -0300 (BRST)


On Sat, 16 Jun 2001, Daniel Phillips wrote:

> In other words, any episode of pageouts is followed immediately by a
> short episode of preemptive cleaning.

linux/mm/vmscan.c::page_launder(), around line 666:
/* Let bdflush take care of the rest. */
wakeup_bdflush(0);

> The definition of 'for a while' and 'plenty of disk bandwidth' can be
> tuned, but I don't think either is particularly critical.

Can be tuned a bit, indeed.

> As a side note, the good old multisecond delay before bdflush kicks in
> doesn't really make a lot of sense - when bandwidth is available the
> filesystem-initiated writeouts should happen right away.

... thus spinning up the disk ?

How about just making sure we write out a bigger bunch
of dirty pages whenever one buffer gets too old ?

Does the patch below do anything good for your laptop? ;)

regards,

Rik

--

--- buffer.c.orig Sat Jun 16 18:05:15 2001 +++ buffer.c Sat Jun 16 18:05:29 2001 @@ -2550,8 +2550,7 @@ if the current bh is not yet timed out, then also all the following bhs will be too young. */ - if (++flushed > bdf_prm.b_un.ndirty && - time_before(jiffies, bh->b_flushtime)) + if(time_before(jiffies, bh->b_flushtime)) goto out_unlock; } else { if (++flushed > bdf_prm.b_un.ndirty)

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