linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* mm/hugetlb.c:3424 gather_bootmem_prealloc_node() warn: unsigned '_x' is never less than zero.
@ 2025-02-14 17:33 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2025-02-14 17:33 UTC (permalink / raw)
  To: Gang Li
  Cc: oe-kbuild-all, linux-kernel, Andrew Morton,
	Linux Memory Management List, Muchun Song

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   128c8f96eb8638c060cd3532dc394d046ce64fe1
commit: b78b27d02930f6f0262353080d0f784ce7aa377e hugetlb: parallelize 1G hugetlb initialization
date:   12 months ago
config: riscv-randconfig-r073-20250213 (https://download.01.org/0day-ci/archive/20250215/202502150114.XM31HL0I-lkp@intel.com/config)
compiler: riscv32-linux-gcc (GCC) 14.2.0

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202502150114.XM31HL0I-lkp@intel.com/

New smatch warnings:
mm/hugetlb.c:3424 gather_bootmem_prealloc_node() warn: unsigned '_x' is never less than zero.

Old smatch warnings:
include/asm-generic/io.h:1005 virt_to_phys() warn: unsigned '_x' is never less than zero.
arch/riscv/include/asm/atomic.h:204 arch_atomic_fetch_add_unless() warn: inconsistent indenting

vim +/_x +3424 mm/hugetlb.c

79359d6d24df2f Mike Kravetz       2023-10-18  3412  
48b8d744ea841b Mike Kravetz       2021-06-30  3413  /*
48b8d744ea841b Mike Kravetz       2021-06-30  3414   * Put bootmem huge pages into the standard lists after mem_map is up.
5e0a760b44417f Kirill A. Shutemov 2023-12-28  3415   * Note: This only applies to gigantic (order > MAX_PAGE_ORDER) pages.
48b8d744ea841b Mike Kravetz       2021-06-30  3416   */
b78b27d02930f6 Gang Li            2024-02-22  3417  static void __init gather_bootmem_prealloc_node(unsigned long nid)
aa888a74977a8f Andi Kleen         2008-07-23  3418  {
d67e32f26713c3 Mike Kravetz       2023-10-18  3419  	LIST_HEAD(folio_list);
aa888a74977a8f Andi Kleen         2008-07-23  3420  	struct huge_bootmem_page *m;
d67e32f26713c3 Mike Kravetz       2023-10-18  3421  	struct hstate *h = NULL, *prev_h = NULL;
aa888a74977a8f Andi Kleen         2008-07-23  3422  
b78b27d02930f6 Gang Li            2024-02-22  3423  	list_for_each_entry(m, &huge_boot_pages[nid], list) {
40d18ebffb3974 Mike Kravetz       2018-08-17 @3424  		struct page *page = virt_to_page(m);
fde1c4ecf91640 Usama Arif         2023-09-13  3425  		struct folio *folio = (void *)page;
d67e32f26713c3 Mike Kravetz       2023-10-18  3426  
d67e32f26713c3 Mike Kravetz       2023-10-18  3427  		h = m->hstate;
d67e32f26713c3 Mike Kravetz       2023-10-18  3428  		/*
d67e32f26713c3 Mike Kravetz       2023-10-18  3429  		 * It is possible to have multiple huge page sizes (hstates)
d67e32f26713c3 Mike Kravetz       2023-10-18  3430  		 * in this list.  If so, process each size separately.
d67e32f26713c3 Mike Kravetz       2023-10-18  3431  		 */
d67e32f26713c3 Mike Kravetz       2023-10-18  3432  		if (h != prev_h && prev_h != NULL)
79359d6d24df2f Mike Kravetz       2023-10-18  3433  			prep_and_add_bootmem_folios(prev_h, &folio_list);
d67e32f26713c3 Mike Kravetz       2023-10-18  3434  		prev_h = h;
ee8f248d266ec6 Becky Bruce        2011-07-25  3435  
48b8d744ea841b Mike Kravetz       2021-06-30  3436  		VM_BUG_ON(!hstate_is_gigantic(h));
d1c6095572d0cf Sidhartha Kumar    2022-11-29  3437  		WARN_ON(folio_ref_count(folio) != 1);
fde1c4ecf91640 Usama Arif         2023-09-13  3438  
fde1c4ecf91640 Usama Arif         2023-09-13  3439  		hugetlb_folio_init_vmemmap(folio, h,
fde1c4ecf91640 Usama Arif         2023-09-13  3440  					   HUGETLB_VMEMMAP_RESERVE_PAGES);
79359d6d24df2f Mike Kravetz       2023-10-18  3441  		init_new_hugetlb_folio(h, folio);
d67e32f26713c3 Mike Kravetz       2023-10-18  3442  		list_add(&folio->lru, &folio_list);
af0fb9df784174 Michal Hocko       2018-01-31  3443  
b0320c7b7d1ac1 Rafael Aquini      2011-06-15  3444  		/*
48b8d744ea841b Mike Kravetz       2021-06-30  3445  		 * We need to restore the 'stolen' pages to totalram_pages
48b8d744ea841b Mike Kravetz       2021-06-30  3446  		 * in order to fix confusing memory reports from free(1) and
48b8d744ea841b Mike Kravetz       2021-06-30  3447  		 * other side-effects, like CommitLimit going negative.
b0320c7b7d1ac1 Rafael Aquini      2011-06-15  3448  		 */
c78a7f3639932c Miaohe Lin         2021-02-24  3449  		adjust_managed_page_count(page, pages_per_huge_page(h));
520495fe96d74e Cannon Matthews    2018-07-03  3450  		cond_resched();
aa888a74977a8f Andi Kleen         2008-07-23  3451  	}
d67e32f26713c3 Mike Kravetz       2023-10-18  3452  
79359d6d24df2f Mike Kravetz       2023-10-18  3453  	prep_and_add_bootmem_folios(h, &folio_list);
aa888a74977a8f Andi Kleen         2008-07-23  3454  }
fde1c4ecf91640 Usama Arif         2023-09-13  3455  

:::::: The code at line 3424 was first introduced by commit
:::::: 40d18ebffb3974272a920c41f2d74431152cae98 mm/hugetlb: remove gigantic page support for HIGHMEM

:::::: TO: Mike Kravetz <mike.kravetz@oracle.com>
:::::: CC: Linus Torvalds <torvalds@linux-foundation.org>

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2025-02-14 17:33 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-02-14 17:33 mm/hugetlb.c:3424 gather_bootmem_prealloc_node() warn: unsigned '_x' is never less than zero kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).