lkml.org 
[lkml]   [2012]   [Aug]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] memory-hotplug: add build zonelists when offline pages
At 08/21/2012 08:51 PM, qiuxishi Wrote:
> From: Xishi Qiu <qiuxishi@huawei.com>
>
> online_pages() does build_all_zonelists() and zone_pcp_update(),
> I think offline_pages() should do it too. The node has no memory
> to allocate, so remove this node's zones form other nodes' zonelists.
>
>
> Signed-off-by: Xishi Qiu <qiuxishi@huawei.com>
> ---
> mm/memory_hotplug.c | 6 +++++-
> 1 files changed, 5 insertions(+), 1 deletions(-)
>
> diff --git a/mm/memory_hotplug.c b/mm/memory_hotplug.c
> index bc7e7a2..5172bd4 100644
> --- a/mm/memory_hotplug.c
> +++ b/mm/memory_hotplug.c
> @@ -979,7 +979,11 @@ repeat:
> if (!node_present_pages(node)) {
> node_clear_state(node, N_HIGH_MEMORY);
> kswapd_stop(node);
> - }
> + mutex_lock(&zonelists_mutex);
> + build_all_zonelists(NODE_DATA(node), NULL);

The node is still onlined now, so there is no need to pass
this node's pgdat to build_all_zonelists().

I think we should build all zonelists when the zone has no
pages.

> + mutex_unlock(&zonelists_mutex);
> + } else
> + zone_pcp_update(zone);

There is more than one zone in a node. So the zone can have
no pages when the node has some pages.

And we have called drain_all_pages(), I think there is no need
to call zone_pcp_update() here.

Thanks
Wen Congyang

>
> vm_total_pages = nr_free_pagecache_pages();
> writeback_set_ratelimit();



\
 
 \ /
  Last update: 2012-08-22 08:41    [W:0.056 / U:1.020 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site