Re: [v5 6/7] mm: Defer TLB flush by keeping both src and dst folios at migration

From: kernel test robot
Date: Thu Jan 11 2024 - 14:59:15 EST


Hi Byungchul,

kernel test robot noticed the following build errors:

[auto build test ERROR on akpm-mm/mm-everything]
[also build test ERROR 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-buildonly-randconfig-005-20240111 (https://download.01.org/0day-ci/archive/20240112/202401120309.9xlXPJBx-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/202401120309.9xlXPJBx-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/202401120309.9xlXPJBx-lkp@xxxxxxxxx/

All errors (new ones prefixed by >>):

In file included from mm/hwpoison-inject.c:10:
mm/internal.h: In function 'init_tlb_ubc':
>> mm/internal.h:931:9: error: implicit declaration of function 'arch_tlbbatch_clear' [-Werror=implicit-function-declaration]
931 | arch_tlbbatch_clear(&ubc->arch);
| ^~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors


vim +/arch_tlbbatch_clear +931 mm/internal.h

928
929 static inline void init_tlb_ubc(struct tlbflush_unmap_batch *ubc)
930 {
> 931 arch_tlbbatch_clear(&ubc->arch);
932 ubc->flush_required = false;
933 ubc->writable = false;
934 }
935 #else
936 static inline void try_to_unmap_flush(void)
937 {
938 }
939 static inline void try_to_unmap_flush_dirty(void)
940 {
941 }
942 static inline void flush_tlb_batched_pending(struct mm_struct *mm)
943 {
944 }
945 static inline void fold_ubc(struct tlbflush_unmap_batch *dst, struct tlbflush_unmap_batch *src)
946 {
947 }
948 static inline void init_tlb_ubc(struct tlbflush_unmap_batch *ubc)
949 {
950 }
951 #endif /* CONFIG_ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH */
952

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