Hi Byungchul, kernel test robot noticed the following build warnings: [auto build test WARNING on akpm-mm/mm-everything] [also build test WARNING on tip/sched/core tip/x86/core arm64/for-next/core tip/x86/mm linus/master v6.7 next-20240111] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Byungchul-Park/x86-tlb-Add-APIs-manipulating-tlb-batch-s-arch-data/20240111-141049 base: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-everything patch link: https://lore.kernel.org/r/20240111060757.13563-7-byungchul%40sk.com patch subject: [v5 6/7] mm: Defer TLB flush by keeping both src and dst folios at migration config: x86_64-randconfig-161-20240111 (https://download.01.org/0day-ci/archive/20240112/202401120637.ZuSqfagi-lkp@xxxxxxxxx/config) compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240112/202401120637.ZuSqfagi-lkp@xxxxxxxxx/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@xxxxxxxxx> | Closes: https://lore.kernel.org/oe-kbuild-all/202401120637.ZuSqfagi-lkp@xxxxxxxxx/ All warnings (new ones prefixed by >>): >> mm/migrate.c:152:6: warning: no previous prototype for 'migrc_flush_start' [-Wmissing-prototypes] 152 | void migrc_flush_start(void) | ^~~~~~~~~~~~~~~~~ >> mm/migrate.c:161:6: warning: no previous prototype for 'migrc_flush_end' [-Wmissing-prototypes] 161 | void migrc_flush_end(struct arch_tlbflush_unmap_batch *arch) | ^~~~~~~~~~~~~~~ vim +/migrc_flush_start +152 mm/migrate.c 151 > 152 void migrc_flush_start(void) 153 { 154 unsigned long flags; 155 156 spin_lock_irqsave(&migrc_lock, flags); 157 migrc_flushing++; 158 spin_unlock_irqrestore(&migrc_lock, flags); 159 } 160 > 161 void migrc_flush_end(struct arch_tlbflush_unmap_batch *arch) 162 { 163 LIST_HEAD(folios); 164 struct folio *f, *f2; 165 unsigned long flags; 166 167 spin_lock_irqsave(&migrc_lock, flags); 168 if (!arch_tlbbatch_done(&migrc_ubc.arch, arch)) { 169 list_splice_init(&migrc_folios, &folios); 170 migrc_ubc.flush_required = false; 171 migrc_ubc.writable = false; 172 } 173 migrc_flushing--; 174 spin_unlock_irqrestore(&migrc_lock, flags); 175 176 list_for_each_entry_safe(f, f2, &folios, lru) { 177 folio_put_small_nopcp(f); 178 atomic_dec(&folio_zone(f)->migrc_pending_nr); 179 } 180 } 181 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki