linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [akpm-mm:mm-new 237/249] mm/damon/paddr.c:193: undefined reference to `__udivdi3'
@ 2025-08-24 10:58 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2025-08-24 10:58 UTC (permalink / raw)
  To: SeongJae Park
  Cc: oe-kbuild-all, Andrew Morton, Linux Memory Management List, Quanmin Yan

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-new
head:   fad61af0eb8692a522c1f75241e36d405249cebd
commit: 9c8b46a2965cff89ee6d5025ab95a83ff1d59826 [237/249] mm/damon/paddr: support addr_unit for DAMOS_PAGEOUT
config: i386-randconfig-052-20250824 (https://download.01.org/0day-ci/archive/20250824/202508241831.EKwdwXZL-lkp@intel.com/config)
compiler: gcc-11 (Debian 11.3.0-12) 11.3.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250824/202508241831.EKwdwXZL-lkp@intel.com/reproduce)

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/202508241831.EKwdwXZL-lkp@intel.com/

All errors (new ones prefixed by >>):

   ld: mm/damon/paddr.o: in function `damon_pa_pageout':
>> mm/damon/paddr.c:193: undefined reference to `__udivdi3'


vim +193 mm/damon/paddr.c

   137	
   138	static unsigned long damon_pa_pageout(struct damon_region *r,
   139			unsigned long addr_unit, struct damos *s,
   140			unsigned long *sz_filter_passed)
   141	{
   142		phys_addr_t addr, applied;
   143		LIST_HEAD(folio_list);
   144		bool install_young_filter = true;
   145		struct damos_filter *filter;
   146		struct folio *folio;
   147	
   148		/* check access in page level again by default */
   149		damos_for_each_ops_filter(filter, s) {
   150			if (filter->type == DAMOS_FILTER_TYPE_YOUNG) {
   151				install_young_filter = false;
   152				break;
   153			}
   154		}
   155		if (install_young_filter) {
   156			filter = damos_new_filter(
   157					DAMOS_FILTER_TYPE_YOUNG, true, false);
   158			if (!filter)
   159				return 0;
   160			damos_add_filter(s, filter);
   161		}
   162	
   163		addr = damon_pa_phys_addr(r->ar.start, addr_unit);
   164		while (addr < damon_pa_phys_addr(r->ar.end, addr_unit)) {
   165			folio = damon_get_folio(PHYS_PFN(addr));
   166			if (damon_pa_invalid_damos_folio(folio, s)) {
   167				addr += PAGE_SIZE;
   168				continue;
   169			}
   170	
   171			if (damos_pa_filter_out(s, folio))
   172				goto put_folio;
   173			else
   174				*sz_filter_passed += folio_size(folio) / addr_unit;
   175	
   176			folio_clear_referenced(folio);
   177			folio_test_clear_young(folio);
   178			if (!folio_isolate_lru(folio))
   179				goto put_folio;
   180			if (folio_test_unevictable(folio))
   181				folio_putback_lru(folio);
   182			else
   183				list_add(&folio->lru, &folio_list);
   184	put_folio:
   185			addr += folio_size(folio);
   186			folio_put(folio);
   187		}
   188		if (install_young_filter)
   189			damos_destroy_filter(filter);
   190		applied = reclaim_pages(&folio_list);
   191		cond_resched();
   192		s->last_applied = folio;
 > 193		return applied * PAGE_SIZE / addr_unit;
   194	}
   195	

-- 
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-08-24 10:59 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-08-24 10:58 [akpm-mm:mm-new 237/249] mm/damon/paddr.c:193: undefined reference to `__udivdi3' 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