[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4CC9EB84.9050406@redhat.com>
Date: Thu, 28 Oct 2010 17:30:44 -0400
From: Rik van Riel <riel@...hat.com>
To: 20101025094235.9154.A69D9226@...fujitsu.com
CC: Mandeep Singh Baines <msb@...omium.org>,
Andrew Morton <akpm@...ux-foundation.org>,
KOSAKI Motohiro <kosaki.motohiro@...fujitsu.com>,
Mel Gorman <mel@....ul.ie>,
Minchan Kim <minchan.kim@...il.com>,
Johannes Weiner <hannes@...xchg.org>,
linux-kernel@...r.kernel.org, linux-mm@...ck.org, wad@...omium.org,
olofj@...omium.org, hughd@...omium.org
Subject: Re: [PATCH] RFC: vmscan: add min_filelist_kbytes sysctl for protecting
the working set
On 10/28/2010 03:15 PM, Mandeep Singh Baines wrote:
> +/*
> + * Check low watermark used to prevent fscache thrashing during low memory.
> + */
> +static int file_is_low(struct zone *zone, struct scan_control *sc)
> +{
> + unsigned long pages_min, active, inactive;
> +
> + if (!scanning_global_lru(sc))
> + return false;
> +
> + pages_min = min_filelist_kbytes>> (PAGE_SHIFT - 10);
> + active = zone_page_state(zone, NR_ACTIVE_FILE);
> + inactive = zone_page_state(zone, NR_INACTIVE_FILE);
> +
> + return ((active + inactive)< pages_min);
> +}
This is problematic.
It is quite possible for a NUMA system to have one zone
legitimately low on page cache (because all the binaries
and libraries got paged in on another NUMA node), without
the system being anywhere near out of memory.
This patch looks like it could cause a false OOM kill
in that scenario.
At the very minimum, you'd have to check that the system
is low on page cache globally, not just locally.
You do point out a real problem though, and it would be
nice to find a generic solution to it...
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists