Okay, no big code change there. try_to_swap_out() can probably still accept
a "zone" argument, like it currently does, except that it does not need
to use it. I assume this would also hold for shm_swap()?
>
> So, I'd like somebody to _try_ to (a) rip out the zone-awareness from
> swap_out() completely and (b) make kswapd do something more like
>
> more_work = 0;
> for (i = 0; i < NR_ZONES; i++) {
> more_work |= balance_zone(zone+i)
> }
> if (!more_work)
> sleep()
>
> where "balance_zone()" would really be a per-zone "shrink_mmap()" with the
> free page logic taken into account.
>
Yes, that's what everyone seems to be pointing at. As I mentioned, I am
looking into this as I type. The only thing is, as Andrea points out,
2.3 bh/irq handlers do not request HIGHMEM pages, so shouldn't the
2.3 kswapd do something more like:
more_work = 0;
for (i = 0; i < MAX_NR_ZONES; i++) {
if (i != ZONE_HIGHMEM)
more_work |= balance_zone(zone+i)
}
if (!more_work)
sleep()
Kanoj
> Sounds reasonable?
>
> Linus
>
> --
> To unsubscribe, send a message with 'unsubscribe linux-mm' in
> the body to majordomo@kvack.org. For more info on Linux MM,
> see: http://www.nl.linux.org/Linux-MM/
>
-
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/