Re: [PATCH v3 01/13] x86: get pg_data_t's memory from other node

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, May 24, 2013 at 05:29:10PM +0800, Tang Chen wrote:
>From: Yasuaki Ishimatsu <isimatu.yasuaki@xxxxxxxxxxxxxx>
>
>If system can create movable node which all memory of the
>node is allocated as ZONE_MOVABLE, setup_node_data() cannot
>allocate memory for the node's pg_data_t.
>So, use memblock_alloc_try_nid() instead of memblock_alloc_nid()
>to retry when the first allocation fails.
>
>As noticed by Chen Gong <gong.chen@xxxxxxxxxxxxxxx>, memblock_alloc_try_nid()
>will call panic() if it fails to allocate memory. So we don't need to
>check the return value.
>

Reviewed-by: Wanpeng Li <liwanp@xxxxxxxxxxxxxxxxxx>

>Signed-off-by: Yasuaki Ishimatsu <isimatu.yasuaki@xxxxxxxxxxxxxx>
>Signed-off-by: Lai Jiangshan <laijs@xxxxxxxxxxxxxx>
>Signed-off-by: Tang Chen <tangchen@xxxxxxxxxxxxxx>
>Signed-off-by: Jiang Liu <jiang.liu@xxxxxxxxxx>
>---
> arch/x86/mm/numa.c |    7 +------
> 1 files changed, 1 insertions(+), 6 deletions(-)
>
>diff --git a/arch/x86/mm/numa.c b/arch/x86/mm/numa.c
>index 11acdf6..af18b18 100644
>--- a/arch/x86/mm/numa.c
>+++ b/arch/x86/mm/numa.c
>@@ -214,12 +214,7 @@ static void __init setup_node_data(int nid, u64 start, u64 end)
> 	 * Allocate node data.  Try node-local memory and then any node.
> 	 * Never allocate in DMA zone.
> 	 */
>-	nd_pa = memblock_alloc_nid(nd_size, SMP_CACHE_BYTES, nid);
>-	if (!nd_pa) {
>-		pr_err("Cannot find %zu bytes in node %d\n",
>-		       nd_size, nid);
>-		return;
>-	}
>+	nd_pa = memblock_alloc_try_nid(nd_size, SMP_CACHE_BYTES, nid);
> 	nd = __va(nd_pa);
>
> 	/* report and initialize */
>-- 
>1.7.1
>
>--
>To unsubscribe, send a message with 'unsubscribe linux-mm' in
>the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
>see: http://www.linux-mm.org/ .
>Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]