Re: [PATCH] mm: vmscan: fix the page state calculation in too_many_isolated

From: Johannes Weiner
Date: Tue Jan 13 2015 - 11:09:51 EST


On Tue, Jan 13, 2015 at 04:37:27PM +0530, Vinayak Menon wrote:
> @@ -1392,6 +1392,44 @@ int isolate_lru_page(struct page *page)
> return ret;
> }
>
> +static int __too_many_isolated(struct zone *zone, int file,
> + struct scan_control *sc, int safe)
> +{
> + unsigned long inactive, isolated;
> +
> + if (file) {
> + if (safe) {
> + inactive = zone_page_state_snapshot(zone,
> + NR_INACTIVE_FILE);
> + isolated = zone_page_state_snapshot(zone,
> + NR_ISOLATED_FILE);
> + } else {
> + inactive = zone_page_state(zone, NR_INACTIVE_FILE);
> + isolated = zone_page_state(zone, NR_ISOLATED_FILE);
> + }
> + } else {
> + if (safe) {
> + inactive = zone_page_state_snapshot(zone,
> + NR_INACTIVE_ANON);
> + isolated = zone_page_state_snapshot(zone,
> + NR_ISOLATED_ANON);
> + } else {
> + inactive = zone_page_state(zone, NR_INACTIVE_ANON);
> + isolated = zone_page_state(zone, NR_ISOLATED_ANON);
> + }
> + }

if (safe) {
inactive = zone_page_state_snapshot(zone, NR_INACTIVE_ANON + 2*file)
isolated = zone_page_state_snapshot(zone, NR_ISOLATED_ANON + file)
} else {
inactive = zone_page_state(zone, NR_INACTIVE_ANON + 2*file)
isolated = zone_page_state(zone, NR_ISOLATED_ANON + file)
}
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/