From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jiang Liu Date: Mon, 17 Aug 2015 03:18:59 +0000 Subject: [Patch V3 2/9] kernel/profile.c: Replace cpu_to_mem() with cpu_to_node() Message-Id: <1439781546-7217-3-git-send-email-jiang.liu@linux.intel.com> List-Id: References: <1439781546-7217-1-git-send-email-jiang.liu@linux.intel.com> In-Reply-To: <1439781546-7217-1-git-send-email-jiang.liu@linux.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Andrew Morton , Mel Gorman , David Rientjes , Mike Galbraith , Peter Zijlstra , "Rafael J . Wysocki" , Tang Chen , Tejun Heo Cc: Jiang Liu , Tony Luck , linux-mm@kvack.org, linux-hotplug@vger.kernel.org, linux-kernel@vger.kernel.org, x86@kernel.org Function profile_cpu_callback() allocates memory without specifying __GFP_THISNODE flag, so replace cpu_to_mem() with cpu_to_node() because cpu_to_mem() may cause suboptimal memory allocation if there's no free memory on the node returned by cpu_to_mem(). It's safe to use cpu_to_mem() because build_all_zonelists() also builds suitable fallback zonelist for memoryless node. Signed-off-by: Jiang Liu --- kernel/profile.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/profile.c b/kernel/profile.c index a7bcd28d6e9f..d14805bdcc4c 100644 --- a/kernel/profile.c +++ b/kernel/profile.c @@ -336,7 +336,7 @@ static int profile_cpu_callback(struct notifier_block *info, switch (action) { case CPU_UP_PREPARE: case CPU_UP_PREPARE_FROZEN: - node = cpu_to_mem(cpu); + node = cpu_to_node(cpu); per_cpu(cpu_profile_flip, cpu) = 0; if (!per_cpu(cpu_profile_hits, cpu)[1]) { page = alloc_pages_exact_node(node, -- 1.7.10.4