On Sun, Dec 4, 2022 at 2:32 AM kernel test robot <lkp@xxxxxxxxx> wrote: > > Hi Mina, > > Thank you for the patch! Yet something to improve: > > [auto build test ERROR on akpm-mm/mm-everything] > > url: https://github.com/intel-lab-lkp/linux/commits/Mina-Almasry/mm-Fix-memcg-reclaim-on-memory-tiered-systems/20221204-173146 > base: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-everything > patch link: https://lore.kernel.org/r/20221204093008.2620459-1-almasrymina%40google.com > patch subject: [PATCH v2] [mm-unstable] mm: Fix memcg reclaim on memory tiered systems > config: alpha-buildonly-randconfig-r005-20221204 > compiler: alpha-linux-gcc (GCC) 12.1.0 > reproduce (this is a W=1 build): > wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross > chmod +x ~/bin/make.cross > # https://github.com/intel-lab-lkp/linux/commit/332f41fcb1b1d6bc7dafd40e8c1e10a1a0952849 > git remote add linux-review https://github.com/intel-lab-lkp/linux > git fetch --no-tags linux-review Mina-Almasry/mm-Fix-memcg-reclaim-on-memory-tiered-systems/20221204-173146 > git checkout 332f41fcb1b1d6bc7dafd40e8c1e10a1a0952849 > # save the config file > mkdir build_dir && cp config build_dir/.config > COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=alpha SHELL=/bin/bash > > If you fix the issue, kindly add following tag where applicable > | Reported-by: kernel test robot <lkp@xxxxxxxxx> > > All errors (new ones prefixed by >>): > > mm/vmscan.c: In function 'demote_folio_list': > >> mm/vmscan.c:1618:9: error: too many arguments to function 'node_get_allowed_targets' > 1618 | node_get_allowed_targets(pgdat, &allowed_mask, demote_from_nodemask); > | ^~~~~~~~~~~~~~~~~~~~~~~~ > In file included from mm/vmscan.c:46: > include/linux/memory-tiers.h:94:20: note: declared here > 94 | static inline void node_get_allowed_targets(pg_data_t *pgdat, nodemask_t *targets) > | ^~~~~~~~~~~~~~~~~~~~~~~~ > I missed updating this function signature. Will fix it in v3. > > vim +/node_get_allowed_targets +1618 mm/vmscan.c > > 1587 > 1588 /* > 1589 * Take folios on @demote_folios and attempt to demote them to another node. > 1590 * Folios which are not demoted are left on @demote_folios. > 1591 */ > 1592 static unsigned int demote_folio_list(struct list_head *demote_folios, > 1593 struct pglist_data *pgdat, > 1594 nodemask_t *demote_from_nodemask) > 1595 { > 1596 int target_nid = next_demotion_node(pgdat->node_id); > 1597 unsigned int nr_succeeded; > 1598 nodemask_t allowed_mask; > 1599 > 1600 struct migration_target_control mtc = { > 1601 /* > 1602 * Allocate from 'node', or fail quickly and quietly. > 1603 * When this happens, 'page' will likely just be discarded > 1604 * instead of migrated. > 1605 */ > 1606 .gfp_mask = (GFP_HIGHUSER_MOVABLE & ~__GFP_RECLAIM) | __GFP_NOWARN | > 1607 __GFP_NOMEMALLOC | GFP_NOWAIT, > 1608 .nid = target_nid, > 1609 .nmask = &allowed_mask > 1610 }; > 1611 > 1612 if (list_empty(demote_folios)) > 1613 return 0; > 1614 > 1615 if (target_nid == NUMA_NO_NODE) > 1616 return 0; > 1617 > > 1618 node_get_allowed_targets(pgdat, &allowed_mask, demote_from_nodemask); > 1619 > 1620 /* Demotion ignores all cpuset and mempolicy settings */ > 1621 migrate_pages(demote_folios, alloc_demote_page, NULL, > 1622 (unsigned long)&mtc, MIGRATE_ASYNC, MR_DEMOTION, > 1623 &nr_succeeded); > 1624 > 1625 __count_vm_events(PGDEMOTE_KSWAPD + reclaimer_offset(), nr_succeeded); > 1626 > 1627 return nr_succeeded; > 1628 } > 1629 > > -- > 0-DAY CI Kernel Test Service > https://01.org/lkp