tree:
https://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git
for-next/faultaround
head: de591a82f41b61af4a8fce49d21b43105c5c2186
commit: f9ce0be71d1fbb038ada15ced83474b0e63f264d [1/10] mm: Cleanup faultaround and
finish_fault() codepaths
config: microblaze-randconfig-r014-20210209 (attached as .config)
compiler: microblaze-linux-gcc (GCC) 9.3.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://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git/commit/?i...
git remote add arm64
https://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git
git fetch --no-tags arm64 for-next/faultaround
git checkout f9ce0be71d1fbb038ada15ced83474b0e63f264d
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=microblaze
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
Note: the arm64/for-next/faultaround HEAD de591a82f41b61af4a8fce49d21b43105c5c2186 builds
fine.
It only hurts bisectibility.
All errors (new ones prefixed by >>):
mm/filemap.c: In function 'filemap_map_pages':
> mm/filemap.c:3056:3: error: implicit declaration of function
'update_mmu_cache'; did you mean 'update_mmu_tlb'?
[-Werror=implicit-function-declaration]
3056 | update_mmu_cache(vma,
vmf->address, vmf->pte);
| ^~~~~~~~~~~~~~~~
| update_mmu_tlb
cc1: some warnings being treated as errors
vim +3056 mm/filemap.c
3013
3014 vm_fault_t filemap_map_pages(struct vm_fault *vmf,
3015 pgoff_t start_pgoff, pgoff_t end_pgoff)
3016 {
3017 struct vm_area_struct *vma = vmf->vma;
3018 struct file *file = vma->vm_file;
3019 struct address_space *mapping = file->f_mapping;
3020 pgoff_t last_pgoff = start_pgoff;
3021 unsigned long address = vmf->address;
3022 XA_STATE(xas, &mapping->i_pages, start_pgoff);
3023 struct page *head, *page;
3024 unsigned int mmap_miss = READ_ONCE(file->f_ra.mmap_miss);
3025 vm_fault_t ret = 0;
3026
3027 rcu_read_lock();
3028 head = first_map_page(mapping, &xas, end_pgoff);
3029 if (!head)
3030 goto out;
3031
3032 if (filemap_map_pmd(vmf, head)) {
3033 ret = VM_FAULT_NOPAGE;
3034 goto out;
3035 }
3036
3037 vmf->address = vma->vm_start + ((start_pgoff - vma->vm_pgoff) <<
PAGE_SHIFT);
3038 vmf->pte = pte_offset_map_lock(vma->vm_mm, vmf->pmd, vmf->address,
&vmf->ptl);
3039 do {
3040 page = find_subpage(head, xas.xa_index);
3041 if (PageHWPoison(page))
3042 goto unlock;
3043
3044 if (mmap_miss > 0)
3045 mmap_miss--;
3046
3047 vmf->address += (xas.xa_index - last_pgoff) << PAGE_SHIFT;
3048 vmf->pte += xas.xa_index - last_pgoff;
3049 last_pgoff = xas.xa_index;
3050
3051 if (!pte_none(*vmf->pte))
3052 goto unlock;
3053
3054 do_set_pte(vmf, page);
3055 /* no need to invalidate: a not-present page won't be cached */
3056 update_mmu_cache(vma, vmf->address, vmf->pte);
3057 unlock_page(head);
3058
3059 /* The fault is handled */
3060 if (vmf->address == address)
3061 ret = VM_FAULT_NOPAGE;
3062 continue;
3063 unlock:
3064 unlock_page(head);
3065 put_page(head);
3066 } while ((head = next_map_page(mapping, &xas, end_pgoff)) != NULL);
3067 pte_unmap_unlock(vmf->pte, vmf->ptl);
3068 out:
3069 rcu_read_unlock();
3070 vmf->address = address;
3071 WRITE_ONCE(file->f_ra.mmap_miss, mmap_miss);
3072 return ret;
3073 }
3074 EXPORT_SYMBOL(filemap_map_pages);
3075
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org