Re: [PATCH] mm/debug_vm_pgtable: Fix corrupted PG_arch_1 by set_pmd_at()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Gavin,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on linus/master]
[cannot apply to hnaz-linux-mm/master linux/master v5.13 next-20210701]
[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]

url:    https://github.com/0day-ci/linux/commits/Gavin-Shan/mm-debug_vm_pgtable-Fix-corrupted-PG_arch_1-by-set_pmd_at/20210702-183310
base:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 3dbdb38e286903ec220aaf1fb29a8d94297da246
config: x86_64-randconfig-a004-20210702 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 9eb613b2de3163686b1a4bd1160f15ac56a4b083)
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
        # install x86_64 cross compiling tool for clang build
        # apt-get install binutils-x86-64-linux-gnu
        # https://github.com/0day-ci/linux/commit/414db1c0feb54b545b3df56bc19ffff27580deb5
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Gavin-Shan/mm-debug_vm_pgtable-Fix-corrupted-PG_arch_1-by-set_pmd_at/20210702-183310
        git checkout 414db1c0feb54b545b3df56bc19ffff27580deb5
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

>> mm/debug_vm_pgtable.c:347:22: error: invalid operands to binary expression ('struct page *' and 'struct page *')
           struct page *page = pfn_to_page(page);
                               ^~~~~~~~~~~~~~~~~
   include/asm-generic/memory_model.h:53:21: note: expanded from macro 'pfn_to_page'
   #define pfn_to_page __pfn_to_page
                       ^
   include/asm-generic/memory_model.h:25:37: note: expanded from macro '__pfn_to_page'
   #define __pfn_to_page(pfn)      (vmemmap + (pfn))
                                    ~~~~~~~ ^ ~~~~~
   1 error generated.


vim +347 mm/debug_vm_pgtable.c

   341	
   342	static void __init pud_advanced_tests(struct mm_struct *mm,
   343					      struct vm_area_struct *vma, pud_t *pudp,
   344					      unsigned long pfn, unsigned long vaddr,
   345					      pgprot_t prot)
   346	{
 > 347		struct page *page = pfn_to_page(page);
   348		pud_t pud;
   349	
   350		if (!has_transparent_hugepage())
   351			return;
   352	
   353		pr_debug("Validating PUD advanced\n");
   354		/* Align the address wrt HPAGE_PUD_SIZE */
   355		vaddr &= HPAGE_PUD_MASK;
   356	
   357		pud = pfn_pud(pfn, prot);
   358		set_pud_at(mm, vaddr, pudp, pud);
   359		flush_dcache_page(page);
   360		pudp_set_wrprotect(mm, vaddr, pudp);
   361		pud = READ_ONCE(*pudp);
   362		WARN_ON(pud_write(pud));
   363	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx

Attachment: .config.gz
Description: application/gzip


[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux