Messages in this thread | | | Date | Thu, 14 May 2009 09:18:57 -0400 | From | Rik van Riel <> | Subject | Re: [PATCH] mmtom: Prevent shrinking of active anon lru list in case of no swap space V2 |
| |
Minchan Kim wrote: > HI, Rik > > Thanks for careful review. :) > > On Thu, May 14, 2009 at 9:58 PM, Rik van Riel <riel@redhat.com> wrote: >> Minchan Kim wrote: >> >>> Now shrink_active_list is called several places. >>> But if we don't have a swap space, we can't reclaim anon pages. >> If swap space has run out, get_scan_ratio() will return >> 0 for the anon scan ratio, meaning we do not scan the >> anon lists. > > I think get_scan_ration can't prevent scanning of anon pages in no > swap system(like embedded system). > That's because in shrink_zone, you add following as > > /* > * Even if we did not try to evict anon pages at all, we want to > * rebalance the anon lru active/inactive ratio. > */ > if (inactive_anon_is_low(zone, sc)) > shrink_active_list(SWAP_CLUSTER_MAX, zone, sc, priority, 0);
That's a fair point.
How about we change this to:
if (inactive_anon_is_low(zone, sc) && nr_swap_pages >= 0)
That way GCC will statically optimize away this branch on systems with CONFIG_SWAP=n.
Does that look reasonable?
-- All rights reversed.
| |