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-20210707] [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-allyesconfig (attached as .config) compiler: gcc-9 (Debian 9.3.0-22) 9.3.0 reproduce (this is a W=1 build): # 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 make W=1 ARCH=x86_64 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All errors (new ones prefixed by >>): In file included from arch/x86/include/asm/page.h:76, from arch/x86/include/asm/thread_info.h:12, from include/linux/thread_info.h:59, from arch/x86/include/asm/preempt.h:7, from include/linux/preempt.h:78, from include/linux/spinlock.h:51, from include/linux/mmzone.h:8, from include/linux/gfp.h:6, from mm/debug_vm_pgtable.c:13: mm/debug_vm_pgtable.c: In function 'pud_advanced_tests': >> include/asm-generic/memory_model.h:25:37: error: invalid operands to binary + (have 'struct page *' and 'struct page *') 25 | #define __pfn_to_page(pfn) (vmemmap + (pfn)) | ^ include/asm-generic/memory_model.h:53:21: note: in expansion of macro '__pfn_to_page' 53 | #define pfn_to_page __pfn_to_page | ^~~~~~~~~~~~~ mm/debug_vm_pgtable.c:347:22: note: in expansion of macro 'pfn_to_page' 347 | struct page *page = pfn_to_page(page); | ^~~~~~~~~~~ Kconfig warnings: (for reference only) WARNING: unmet direct dependencies detected for PHY_SPARX5_SERDES Depends on (ARCH_SPARX5 || COMPILE_TEST && OF && HAS_IOMEM Selected by - SPARX5_SWITCH && NETDEVICES && ETHERNET && NET_VENDOR_MICROCHIP && NET_SWITCHDEV && HAS_IOMEM vim +25 include/asm-generic/memory_model.h 8f6aac419bd590 Christoph Lameter 2007-10-16 23 af901ca181d92a André Goddard Rosa 2009-11-14 24 /* memmap is virtually contiguous. */ 8f6aac419bd590 Christoph Lameter 2007-10-16 @25 #define __pfn_to_page(pfn) (vmemmap + (pfn)) 32272a26974d20 Martin Schwidefsky 2008-12-25 26 #define __page_to_pfn(page) (unsigned long)((page) - vmemmap) 8f6aac419bd590 Christoph Lameter 2007-10-16 27 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org