Re: [RFC] 2.3.39 zone balancing

From: Linus Torvalds (torvalds@transmeta.com)
Date: Thu Jan 13 2000 - 18:29:51 EST


On Fri, 14 Jan 2000, Ingo Molnar wrote:
>
> so why cant swap_out (conceptually) accept a 'zones under pressure'
> bitmask as an input, and calculate zones from the physical address it sees
> in the page table.

Because swap_out() is going to look at the page tables _anyway_.

Basically, my argument is that there is no way "swap_out()" can really
target any special zone, except by avoiding to do the final stage in a
long sequence of stages that it has already done. I think that's just
completely wasteful - doing all the work, and then at the last minute
deciding to not use the work after all. Especially as we don't really have
any good reason to believe that it's the right thing in the first place.

I suspect we're much better off just having a simple "age the page tables"
thing that doesn't care abotu zones at all, and when a page table entry
has been aged enough, it gets pushed into the page/swap cache. It's
reasonably cheap to fault it in again, and because we use aging on the
page tables we've selected a page that isn't supposed to be very active
anyway.

So that's why I think the page table walker should be completely
zone-blind, and just not care. It's likely to be more "balanced" that way
anyway.

The "shrink_mmap()" stage is another matter entirely. shrink_mmap() has
complete control over which zone it looks at, and can do a good (perfect)
job of balancing the amount of work it does to how much it wants to
accomplish.

                Linus

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



This archive was generated by hypermail 2b29 : Sat Jan 15 2000 - 21:00:24 EST