On Thu, Jun 16, 2022 at 11:38:46AM +0800, Muchun Song wrote: > The following commit: > > commit 641844f5616d ("mm/hugetlb: introduce minimum hugepage order") > > fixed a static checker warning and introduced a global variable minimum_order > to fix the warning. However, the local variable in dissolve_free_huge_pages() > can be initialized to huge_page_order(&default_hstate) to fix the warning. > So remove minimum_order to simplify the code. > > Signed-off-by: Muchun Song <songmuchun@xxxxxxxxxxxxx> Reviewed-by: Oscar Salvador <osalvador@xxxxxxx> > --- > mm/hugetlb.c | 18 +++++++----------- > 1 file changed, 7 insertions(+), 11 deletions(-) > > diff --git a/mm/hugetlb.c b/mm/hugetlb.c > index 8ea4e51d8186..405d1c7441c9 100644 > --- a/mm/hugetlb.c > +++ b/mm/hugetlb.c > @@ -66,12 +66,6 @@ static bool hugetlb_cma_page(struct page *page, unsigned int order) > #endif > static unsigned long hugetlb_cma_size __initdata; > > -/* > - * Minimum page order among possible hugepage sizes, set to a proper value > - * at boot time. > - */ > -static unsigned int minimum_order __read_mostly = UINT_MAX; > - > __initdata LIST_HEAD(huge_boot_pages); > > /* for command line parsing */ > @@ -2161,11 +2155,17 @@ int dissolve_free_huge_pages(unsigned long start_pfn, unsigned long end_pfn) > unsigned long pfn; > struct page *page; > int rc = 0; > + unsigned int order; > + struct hstate *h; > > if (!hugepages_supported()) > return rc; > > - for (pfn = start_pfn; pfn < end_pfn; pfn += 1 << minimum_order) { > + order = huge_page_order(&default_hstate); > + for_each_hstate(h) > + order = min(order, huge_page_order(h)); > + > + for (pfn = start_pfn; pfn < end_pfn; pfn += 1 << order) { > page = pfn_to_page(pfn); > rc = dissolve_free_huge_page(page); > if (rc) > @@ -3157,9 +3157,6 @@ static void __init hugetlb_init_hstates(void) > struct hstate *h, *h2; > > for_each_hstate(h) { > - if (minimum_order > huge_page_order(h)) > - minimum_order = huge_page_order(h); > - > /* oversize hugepages were init'ed in early boot */ > if (!hstate_is_gigantic(h)) > hugetlb_hstate_alloc_pages(h); > @@ -3184,7 +3181,6 @@ static void __init hugetlb_init_hstates(void) > h->demote_order = h2->order; > } > } > - VM_BUG_ON(minimum_order == UINT_MAX); > } > > static void __init report_hugepages(void) > -- > 2.11.0 > > -- Oscar Salvador SUSE Labs