* Re: [PATCH v3 04/11] arm64/mm: Refactor __set_ptes() and __ptep_get_and_clear() [not found] <20250304150444.3788920-5-ryan.roberts@arm.com> @ 2025-03-06 5:08 ` kernel test robot 2025-03-06 11:54 ` Ryan Roberts 0 siblings, 1 reply; 2+ messages in thread From: kernel test robot @ 2025-03-06 5:08 UTC (permalink / raw) To: Ryan Roberts, Catalin Marinas, Will Deacon, Pasha Tatashin, Andrew Morton, Uladzislau Rezki, Christoph Hellwig, David Hildenbrand, Matthew Wilcox (Oracle), Mark Rutland, Anshuman Khandual, Alexandre Ghiti, Kevin Brodsky Cc: llvm, oe-kbuild-all, Linux Memory Management List, Ryan Roberts, linux-arm-kernel, linux-kernel Hi Ryan, kernel test robot noticed the following build errors: [auto build test ERROR on linus/master] [also build test ERROR on v6.14-rc5 next-20250305] [cannot apply to arm64/for-next/core akpm-mm/mm-everything arm-perf/for-next/perf] [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/Ryan-Roberts/arm64-hugetlb-Cleanup-huge_pte-size-discovery-mechanisms/20250304-230647 base: linus/master patch link: https://lore.kernel.org/r/20250304150444.3788920-5-ryan.roberts%40arm.com patch subject: [PATCH v3 04/11] arm64/mm: Refactor __set_ptes() and __ptep_get_and_clear() config: arm64-randconfig-001-20250305 (https://download.01.org/0day-ci/archive/20250306/202503061237.QurSXHSC-lkp@intel.com/config) compiler: clang version 15.0.7 (https://github.com/llvm/llvm-project 8dfdcc7b7bf66834a761bd8de445840ef68e4d1a) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250306/202503061237.QurSXHSC-lkp@intel.com/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@intel.com> | Closes: https://lore.kernel.org/oe-kbuild-all/202503061237.QurSXHSC-lkp@intel.com/ All errors (new ones prefixed by >>): In file included from arch/arm64/kernel/asm-offsets.c:12: In file included from include/linux/ftrace.h:10: In file included from include/linux/trace_recursion.h:5: In file included from include/linux/interrupt.h:11: In file included from include/linux/hardirq.h:11: In file included from arch/arm64/include/asm/hardirq.h:17: In file included from include/asm-generic/hardirq.h:17: In file included from include/linux/irq.h:20: In file included from include/linux/io.h:14: In file included from arch/arm64/include/asm/io.h:12: In file included from include/linux/pgtable.h:6: >> arch/arm64/include/asm/pgtable.h:639:7: error: duplicate case value '536870912' case PUD_SIZE: ^ include/asm-generic/pgtable-nopud.h:20:20: note: expanded from macro 'PUD_SIZE' #define PUD_SIZE (1UL << PUD_SHIFT) ^ arch/arm64/include/asm/pgtable.h:636:7: note: previous case defined here case PMD_SIZE: ^ include/asm-generic/pgtable-nopmd.h:22:20: note: expanded from macro 'PMD_SIZE' #define PMD_SIZE (1UL << PMD_SHIFT) ^ In file included from arch/arm64/kernel/asm-offsets.c:12: In file included from include/linux/ftrace.h:10: In file included from include/linux/trace_recursion.h:5: In file included from include/linux/interrupt.h:11: In file included from include/linux/hardirq.h:11: In file included from arch/arm64/include/asm/hardirq.h:17: In file included from include/asm-generic/hardirq.h:17: In file included from include/linux/irq.h:20: In file included from include/linux/io.h:14: In file included from arch/arm64/include/asm/io.h:12: In file included from include/linux/pgtable.h:6: arch/arm64/include/asm/pgtable.h:1303:7: error: duplicate case value '536870912' case PUD_SIZE: ^ include/asm-generic/pgtable-nopud.h:20:20: note: expanded from macro 'PUD_SIZE' #define PUD_SIZE (1UL << PUD_SHIFT) ^ arch/arm64/include/asm/pgtable.h:1300:7: note: previous case defined here case PMD_SIZE: ^ include/asm-generic/pgtable-nopmd.h:22:20: note: expanded from macro 'PMD_SIZE' #define PMD_SIZE (1UL << PMD_SHIFT) ^ 2 errors generated. make[3]: *** [scripts/Makefile.build:102: arch/arm64/kernel/asm-offsets.s] Error 1 shuffle=4064171735 make[3]: Target 'prepare' not remade because of errors. make[2]: *** [Makefile:1264: prepare0] Error 2 shuffle=4064171735 make[2]: Target 'prepare' not remade because of errors. make[1]: *** [Makefile:251: __sub-make] Error 2 shuffle=4064171735 make[1]: Target 'prepare' not remade because of errors. make: *** [Makefile:251: __sub-make] Error 2 shuffle=4064171735 make: Target 'prepare' not remade because of errors. vim +/536870912 +639 arch/arm64/include/asm/pgtable.h 626 627 static inline void set_ptes_anysz(struct mm_struct *mm, pte_t *ptep, pte_t pte, 628 unsigned int nr, unsigned long pgsize) 629 { 630 unsigned long stride = pgsize >> PAGE_SHIFT; 631 632 switch (pgsize) { 633 case PAGE_SIZE: 634 page_table_check_ptes_set(mm, ptep, pte, nr); 635 break; 636 case PMD_SIZE: 637 page_table_check_pmds_set(mm, (pmd_t *)ptep, pte_pmd(pte), nr); 638 break; > 639 case PUD_SIZE: 640 page_table_check_puds_set(mm, (pud_t *)ptep, pte_pud(pte), nr); 641 break; 642 default: 643 VM_WARN_ON(1); 644 } 645 646 __sync_cache_and_tags(pte, nr * stride); 647 648 for (;;) { 649 __check_safe_pte_update(mm, ptep, pte); 650 __set_pte(ptep, pte); 651 if (--nr == 0) 652 break; 653 ptep++; 654 pte = pte_advance_pfn(pte, stride); 655 } 656 } 657 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki ^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH v3 04/11] arm64/mm: Refactor __set_ptes() and __ptep_get_and_clear() 2025-03-06 5:08 ` [PATCH v3 04/11] arm64/mm: Refactor __set_ptes() and __ptep_get_and_clear() kernel test robot @ 2025-03-06 11:54 ` Ryan Roberts 0 siblings, 0 replies; 2+ messages in thread From: Ryan Roberts @ 2025-03-06 11:54 UTC (permalink / raw) To: kernel test robot, Catalin Marinas, Will Deacon, Pasha Tatashin, Andrew Morton, Uladzislau Rezki, Christoph Hellwig, David Hildenbrand, Matthew Wilcox (Oracle), Mark Rutland, Anshuman Khandual, Alexandre Ghiti, Kevin Brodsky Cc: llvm, oe-kbuild-all, Linux Memory Management List, linux-arm-kernel, linux-kernel On 06/03/2025 05:08, kernel test robot wrote: > Hi Ryan, > > kernel test robot noticed the following build errors: > > [auto build test ERROR on linus/master] > [also build test ERROR on v6.14-rc5 next-20250305] > [cannot apply to arm64/for-next/core akpm-mm/mm-everything arm-perf/for-next/perf] > [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/Ryan-Roberts/arm64-hugetlb-Cleanup-huge_pte-size-discovery-mechanisms/20250304-230647 > base: linus/master > patch link: https://lore.kernel.org/r/20250304150444.3788920-5-ryan.roberts%40arm.com > patch subject: [PATCH v3 04/11] arm64/mm: Refactor __set_ptes() and __ptep_get_and_clear() > config: arm64-randconfig-001-20250305 (https://download.01.org/0day-ci/archive/20250306/202503061237.QurSXHSC-lkp@intel.com/config) > compiler: clang version 15.0.7 (https://github.com/llvm/llvm-project 8dfdcc7b7bf66834a761bd8de445840ef68e4d1a) > reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250306/202503061237.QurSXHSC-lkp@intel.com/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@intel.com> > | Closes: https://lore.kernel.org/oe-kbuild-all/202503061237.QurSXHSC-lkp@intel.com/ > > All errors (new ones prefixed by >>): > > In file included from arch/arm64/kernel/asm-offsets.c:12: > In file included from include/linux/ftrace.h:10: > In file included from include/linux/trace_recursion.h:5: > In file included from include/linux/interrupt.h:11: > In file included from include/linux/hardirq.h:11: > In file included from arch/arm64/include/asm/hardirq.h:17: > In file included from include/asm-generic/hardirq.h:17: > In file included from include/linux/irq.h:20: > In file included from include/linux/io.h:14: > In file included from arch/arm64/include/asm/io.h:12: > In file included from include/linux/pgtable.h:6: >>> arch/arm64/include/asm/pgtable.h:639:7: error: duplicate case value '536870912' > case PUD_SIZE: > ^ > include/asm-generic/pgtable-nopud.h:20:20: note: expanded from macro 'PUD_SIZE' > #define PUD_SIZE (1UL << PUD_SHIFT) > ^ > arch/arm64/include/asm/pgtable.h:636:7: note: previous case defined here > case PMD_SIZE: > ^ > include/asm-generic/pgtable-nopmd.h:22:20: note: expanded from macro 'PMD_SIZE' > #define PMD_SIZE (1UL << PMD_SHIFT) > ^ > In file included from arch/arm64/kernel/asm-offsets.c:12: > In file included from include/linux/ftrace.h:10: > In file included from include/linux/trace_recursion.h:5: > In file included from include/linux/interrupt.h:11: > In file included from include/linux/hardirq.h:11: > In file included from arch/arm64/include/asm/hardirq.h:17: > In file included from include/asm-generic/hardirq.h:17: > In file included from include/linux/irq.h:20: > In file included from include/linux/io.h:14: > In file included from arch/arm64/include/asm/io.h:12: > In file included from include/linux/pgtable.h:6: > arch/arm64/include/asm/pgtable.h:1303:7: error: duplicate case value '536870912' > case PUD_SIZE: > ^ > include/asm-generic/pgtable-nopud.h:20:20: note: expanded from macro 'PUD_SIZE' > #define PUD_SIZE (1UL << PUD_SHIFT) > ^ > arch/arm64/include/asm/pgtable.h:1300:7: note: previous case defined here > case PMD_SIZE: > ^ > include/asm-generic/pgtable-nopmd.h:22:20: note: expanded from macro 'PMD_SIZE' > #define PMD_SIZE (1UL << PMD_SHIFT) > ^ > 2 errors generated. > make[3]: *** [scripts/Makefile.build:102: arch/arm64/kernel/asm-offsets.s] Error 1 shuffle=4064171735 > make[3]: Target 'prepare' not remade because of errors. > make[2]: *** [Makefile:1264: prepare0] Error 2 shuffle=4064171735 > make[2]: Target 'prepare' not remade because of errors. > make[1]: *** [Makefile:251: __sub-make] Error 2 shuffle=4064171735 > make[1]: Target 'prepare' not remade because of errors. > make: *** [Makefile:251: __sub-make] Error 2 shuffle=4064171735 > make: Target 'prepare' not remade because of errors. > > > vim +/536870912 +639 arch/arm64/include/asm/pgtable.h > > 626 > 627 static inline void set_ptes_anysz(struct mm_struct *mm, pte_t *ptep, pte_t pte, > 628 unsigned int nr, unsigned long pgsize) > 629 { > 630 unsigned long stride = pgsize >> PAGE_SHIFT; > 631 > 632 switch (pgsize) { > 633 case PAGE_SIZE: > 634 page_table_check_ptes_set(mm, ptep, pte, nr); > 635 break; > 636 case PMD_SIZE: > 637 page_table_check_pmds_set(mm, (pmd_t *)ptep, pte_pmd(pte), nr); > 638 break; > > 639 case PUD_SIZE: > 640 page_table_check_puds_set(mm, (pud_t *)ptep, pte_pud(pte), nr); > 641 break; Looks like this needs to be wrapped in `#ifndef __PAGETABLE_PMD_FOLDED`. This failing config folds the PMD so PMD_SIZE and PUD_SIZE are the same. Given there are now 2 kernel robot reports, I'll respin the series next week, giving time for any interim review comments. Thanks, Ryan > 642 default: > 643 VM_WARN_ON(1); > 644 } > 645 > 646 __sync_cache_and_tags(pte, nr * stride); > 647 > 648 for (;;) { > 649 __check_safe_pte_update(mm, ptep, pte); > 650 __set_pte(ptep, pte); > 651 if (--nr == 0) > 652 break; > 653 ptep++; > 654 pte = pte_advance_pfn(pte, stride); > 655 } > 656 } > 657 > ^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2025-03-06 11:54 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20250304150444.3788920-5-ryan.roberts@arm.com>
2025-03-06 5:08 ` [PATCH v3 04/11] arm64/mm: Refactor __set_ptes() and __ptep_get_and_clear() kernel test robot
2025-03-06 11:54 ` Ryan Roberts
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox