• P
    hugetlb: fix hugepages_setup when deal with pernode · f87442f4
    Peng Liu 提交于
    Hugepages can be specified to pernode since "hugetlbfs: extend the
    definition of hugepages parameter to support node allocation", but the
    following problem is observed.
    
    Confusing behavior is observed when both 1G and 2M hugepage is set
    after "numa=off".
     cmdline hugepage settings:
      hugepagesz=1G hugepages=0:3,1:3
      hugepagesz=2M hugepages=0:1024,1:1024
     results:
      HugeTLB registered 1.00 GiB page size, pre-allocated 0 pages
      HugeTLB registered 2.00 MiB page size, pre-allocated 1024 pages
    
    Furthermore, confusing behavior can be also observed when an invalid node
    behind a valid node.  To fix this, never allocate any typical hugepage
    when an invalid parameter is received.
    
    Link: https://lkml.kernel.org/r/20220413032915.251254-3-liupeng256@huawei.com
    Fixes: b5389086 ("hugetlbfs: extend the definition of hugepages parameter to support node allocation")
    Signed-off-by: NPeng Liu <liupeng256@huawei.com>
    Reviewed-by: NMike Kravetz <mike.kravetz@oracle.com>
    Cc: Baolin Wang <baolin.wang@linux.alibaba.com>
    Cc: David Hildenbrand <david@redhat.com>
    Cc: Liu Yuntao <liuyuntao10@huawei.com>
    Cc: Muchun Song <songmuchun@bytedance.com>
    Cc: Zhenguo Yao <yaozhenguo1@gmail.com>
    Cc: Kefeng Wang <wangkefeng.wang@huawei.com>
    Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
    f87442f4
hugetlb.c 193.4 KB