[RFC PATCH] arm64/hugetlb enable gigantic hugepage
From: Yisheng Xie <hidden>
Date: 2016-08-19 09:51:21
Also in:
linux-mm, lkml
add more, hi all, Could anyone do me a favor and give some comments? Thanks Xie Yisheng On 2016/8/18 20:05, Xie Yisheng wrote:
quoted hunk
As we know, arm64 also support gigantic hugepage eg. 1G. So I try to use this function by adding hugepagesz=1G in kernel parameters, with CONFIG_CMA=y. However, when: echo xx > /sys/kernel/mm/hugepages/hugepages-1048576kB/ nr_hugepages it failed with the info: -bash: echo: write error: Invalid argument This patch make gigantic hugepage can be used on arm64, when CONFIG_CMA=y or other related configs is enable. Signed-off-by: Xie Yisheng <redacted> --- mm/hugetlb.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)diff --git a/mm/hugetlb.c b/mm/hugetlb.c index 87e11d8..b4d8048 100644 --- a/mm/hugetlb.c +++ b/mm/hugetlb.c@@ -1022,7 +1022,8 @@ static int hstate_next_node_to_free(struct hstate *h, nodemask_t *nodes_allowed) ((node = hstate_next_node_to_free(hs, mask)) || 1); \ nr_nodes--) -#if (defined(CONFIG_X86_64) || defined(CONFIG_S390)) && \ +#if (defined(CONFIG_X86_64) || defined(CONFIG_S390) || \ + defined(CONFIG_ARM64)) && \ ((defined(CONFIG_MEMORY_ISOLATION) && defined(CONFIG_COMPACTION)) || \ defined(CONFIG_CMA)) static void destroy_compound_gigantic_page(struct page *page,