All of lore.kernel.org
 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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.