OSDN Git Service

mm: hugetlb: fix the name of hugetlb CMA
authorBarry Song <song.bao.hua@hisilicon.com>
Wed, 12 Aug 2020 01:32:00 +0000 (18:32 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 12 Aug 2020 17:57:57 +0000 (10:57 -0700)
Once we enable CMA_DEBUGFS, we will get the below errors: directory
'cma-hugetlb' with parent 'cma' already present.

We should have different names for different CMA areas.

Signed-off-by: Barry Song <song.bao.hua@hisilicon.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Reviewed-by: Mike Kravetz <mike.kravetz@oracle.com>
Acked-by: Roman Gushchin <guro@fb.com>
Link: http://lkml.kernel.org/r/20200616223131.33828-3-song.bao.hua@hisilicon.com
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
mm/hugetlb.c

index 8a18f12..6b6b0d5 100644 (file)
@@ -5707,12 +5707,14 @@ void __init hugetlb_cma_reserve(int order)
        reserved = 0;
        for_each_node_state(nid, N_ONLINE) {
                int res;
+               char name[20];
 
                size = min(per_node, hugetlb_cma_size - reserved);
                size = round_up(size, PAGE_SIZE << order);
 
+               snprintf(name, 20, "hugetlb%d", nid);
                res = cma_declare_contiguous_nid(0, size, 0, PAGE_SIZE << order,
-                                                0, false, "hugetlb",
+                                                0, false, name,
                                                 &hugetlb_cma[nid], nid);
                if (res) {
                        pr_warn("hugetlb_cma: reservation failed: err %d, node %d",