linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [linux-next:master 6034/7427] arch/sh/include/asm/atomic-irq.h:69:undefined reference to `page_range_contiguous'
@ 2025-09-09  9:31 kernel test robot
  2025-09-09  9:47 ` David Hildenbrand
  0 siblings, 1 reply; 2+ messages in thread
From: kernel test robot @ 2025-09-09  9:31 UTC (permalink / raw)
  To: David Hildenbrand
  Cc: oe-kbuild-all, Andrew Morton, Linux Memory Management List,
	Lorenzo Stoakes

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head:   65dd046ef55861190ecde44c6d9fcde54b9fb77d
commit: 73f5c4c5c6a36a130ccba6809337e42ccf8350fa [6034/7427] mm/gup: drop nth_page() usage in unpin_user_page_range_dirty_lock()
config: sh-randconfig-r121-20250908 (https://download.01.org/0day-ci/archive/20250910/202509100708.5mJZ2cLm-lkp@intel.com/config)
compiler: sh4-linux-gcc (GCC) 15.1.0
reproduce: (https://download.01.org/0day-ci/archive/20250910/202509100708.5mJZ2cLm-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/202509100708.5mJZ2cLm-lkp@intel.com/

All errors (new ones prefixed by >>):

   sh4-linux-ld: crypto/testmgr.o: in function `sg_set_buf':
   testmgr.c:(.text+0x8fc): undefined reference to `page_range_contiguous'
   sh4-linux-ld: drivers/usb/core/devio.o: in function `sg_set_buf':
   devio.c:(.text+0xd54): undefined reference to `page_range_contiguous'
   sh4-linux-ld: drivers/media/common/videobuf2/videobuf2-dma-contig.o: in function `vb2_dc_dmabuf_ops_attach':
   videobuf2-dma-contig.c:(.text+0x920): undefined reference to `page_range_contiguous'
   sh4-linux-ld: net/core/skbuff.o: in function `__skb_to_sgvec':
   skbuff.c:(.text+0x2180): undefined reference to `page_range_contiguous'
   sh4-linux-ld: mm/gup.o: in function `unpin_user_page_range_dirty_lock':
>> arch/sh/include/asm/atomic-irq.h:69:(.text+0xe34): undefined reference to `page_range_contiguous'
   sh4-linux-ld: fs/ecryptfs/crypto.o:crypto.c:(.text+0x954): more undefined references to `page_range_contiguous' follow


vim +69 arch/sh/include/asm/atomic-irq.h

770345adc38485 Mark Rutland   2023-06-05  62  
c6470150dff9af Peter Zijlstra 2014-03-26  63  #undef ATOMIC_OPS
7d9794e7523798 Peter Zijlstra 2016-04-18  64  #define ATOMIC_OPS(op, c_op)						\
7d9794e7523798 Peter Zijlstra 2016-04-18  65  	ATOMIC_OP(op, c_op)						\
7d9794e7523798 Peter Zijlstra 2016-04-18  66  	ATOMIC_FETCH_OP(op, c_op)
7d9794e7523798 Peter Zijlstra 2016-04-18  67  
7d9794e7523798 Peter Zijlstra 2016-04-18  68  ATOMIC_OPS(and, &=)
7d9794e7523798 Peter Zijlstra 2016-04-18 @69  ATOMIC_OPS(or, |=)
7d9794e7523798 Peter Zijlstra 2016-04-18  70  ATOMIC_OPS(xor, ^=)
7d9794e7523798 Peter Zijlstra 2016-04-18  71  

:::::: The code at line 69 was first introduced by commit
:::::: 7d9794e7523798e1b9422ad9f4e4d808ae5d5932 locking/atomic, arch/sh: Implement atomic_fetch_{add,sub,and,or,xor}()

:::::: TO: Peter Zijlstra <peterz@infradead.org>
:::::: CC: Ingo Molnar <mingo@kernel.org>

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


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [linux-next:master 6034/7427] arch/sh/include/asm/atomic-irq.h:69:undefined reference to `page_range_contiguous'
  2025-09-09  9:31 [linux-next:master 6034/7427] arch/sh/include/asm/atomic-irq.h:69:undefined reference to `page_range_contiguous' kernel test robot
@ 2025-09-09  9:47 ` David Hildenbrand
  0 siblings, 0 replies; 2+ messages in thread
From: David Hildenbrand @ 2025-09-09  9:47 UTC (permalink / raw)
  To: kernel test robot
  Cc: oe-kbuild-all, Andrew Morton, Linux Memory Management List,
	Lorenzo Stoakes

On 09.09.25 11:31, kernel test robot wrote:
> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
> head:   65dd046ef55861190ecde44c6d9fcde54b9fb77d
> commit: 73f5c4c5c6a36a130ccba6809337e42ccf8350fa [6034/7427] mm/gup: drop nth_page() usage in unpin_user_page_range_dirty_lock()
> config: sh-randconfig-r121-20250908 (https://download.01.org/0day-ci/archive/20250910/202509100708.5mJZ2cLm-lkp@intel.com/config)
> compiler: sh4-linux-gcc (GCC) 15.1.0
> reproduce: (https://download.01.org/0day-ci/archive/20250910/202509100708.5mJZ2cLm-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/202509100708.5mJZ2cLm-lkp@intel.com/
> 
> All errors (new ones prefixed by >>):
> 
>     sh4-linux-ld: crypto/testmgr.o: in function `sg_set_buf':
>     testmgr.c:(.text+0x8fc): undefined reference to `page_range_contiguous'
>     sh4-linux-ld: drivers/usb/core/devio.o: in function `sg_set_buf':
>     devio.c:(.text+0xd54): undefined reference to `page_range_contiguous'
>     sh4-linux-ld: drivers/media/common/videobuf2/videobuf2-dma-contig.o: in function `vb2_dc_dmabuf_ops_attach':
>     videobuf2-dma-contig.c:(.text+0x920): undefined reference to `page_range_contiguous'
>     sh4-linux-ld: net/core/skbuff.o: in function `__skb_to_sgvec':
>     skbuff.c:(.text+0x2180): undefined reference to `page_range_contiguous'
>     sh4-linux-ld: mm/gup.o: in function `unpin_user_page_range_dirty_lock':
>>> arch/sh/include/asm/atomic-irq.h:69:(.text+0xe34): undefined reference to `page_range_contiguous'
>     sh4-linux-ld: fs/ecryptfs/crypto.o:crypto.c:(.text+0x954): more undefined references to `page_range_contiguous' follow
> 

Yes, can reproduce that. The config has CONFIG_SPARSEMEM without VMEMMAP and:

# CONFIG_MMU is not set

I'm surprised that we can have SPARSEMEM with NOMMU. What a time to be alive.

The following seems to fix it:

diff --git a/mm/util.c b/mm/util.c
index 248f877f629b..6c1d64ed0221 100644
--- a/mm/util.c
+++ b/mm/util.c
@@ -1306,6 +1306,7 @@ unsigned int folio_pte_batch(struct folio *folio, pte_t *ptep, pte_t pte,
  {
         return folio_pte_batch_flags(folio, NULL, ptep, &pte, max_nr, 0);
  }
+#endif /* CONFIG_MMU */
  
  #if defined(CONFIG_SPARSEMEM) && !defined(CONFIG_SPARSEMEM_VMEMMAP)
  /**
@@ -1342,4 +1343,3 @@ bool page_range_contiguous(const struct page *page, unsigned long nr_pages)
  }
  EXPORT_SYMBOL(page_range_contiguous);
  #endif
-#endif /* CONFIG_MMU */


-- 
Cheers

David / dhildenb



^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2025-09-09  9:47 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-09-09  9:31 [linux-next:master 6034/7427] arch/sh/include/asm/atomic-irq.h:69:undefined reference to `page_range_contiguous' kernel test robot
2025-09-09  9:47 ` David Hildenbrand

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox