linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [akpm-mm:mm-stable 290/329] lib/iov_iter.c:474:7: error: call to undeclared function 'folio_test_partial_kmap'; ISO C99 and later do not support implicit function declarations
@ 2025-06-02 12:12 kernel test robot
  2025-06-02 15:00 ` Matthew Wilcox
  0 siblings, 1 reply; 2+ messages in thread
From: kernel test robot @ 2025-06-02 12:12 UTC (permalink / raw)
  To: Matthew Wilcox (Oracle)
  Cc: llvm, oe-kbuild-all, Andrew Morton, Linux Memory Management List

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-stable
head:   0b43b8bc8ef88bb45b018b2d4853d38bfc5ce2a7
commit: d9736929445e7f4c60f0093af61ff0b52e2d4412 [290/329] iov: remove copy_page_from_iter_atomic()
config: x86_64-rhel-9.4-rust (https://download.01.org/0day-ci/archive/20250602/202506022027.IYQzZghL-lkp@intel.com/config)
compiler: clang version 18.1.8 (https://github.com/llvm/llvm-project 3b5b5c1ec4a3095ab096dd780e84d7ab81f3d7ff)
rustc: rustc 1.78.0 (9b00956e5 2024-04-29)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250602/202506022027.IYQzZghL-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/202506022027.IYQzZghL-lkp@intel.com/

All errors (new ones prefixed by >>):

>> lib/iov_iter.c:474:7: error: call to undeclared function 'folio_test_partial_kmap'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
     474 |                 if (folio_test_partial_kmap(folio) &&
         |                     ^
   lib/iov_iter.c:474:7: note: did you mean 'folio_test_partially_mapped'?
   include/linux/page-flags.h:901:1: note: 'folio_test_partially_mapped' declared here
     901 | FOLIO_FLAG(partially_mapped, FOLIO_SECOND_PAGE)
         | ^
   include/linux/page-flags.h:440:37: note: expanded from macro 'FOLIO_FLAG'
     440 | #define FOLIO_FLAG(name, page)                                          \
         |                                                                         ^
   include/linux/page-flags.h:413:29: note: expanded from macro '\
   FOLIO_TEST_FLAG'
     413 | static __always_inline bool folio_test_##name(const struct folio *folio) \
         |                             ^
   <scratch space>:128:1: note: expanded from here
     128 | folio_test_partially_mapped
         | ^
   1 error generated.


vim +/folio_test_partial_kmap +474 lib/iov_iter.c

   459	
   460	size_t copy_folio_from_iter_atomic(struct folio *folio, size_t offset,
   461			size_t bytes, struct iov_iter *i)
   462	{
   463		size_t n, copied = 0;
   464	
   465		if (!page_copy_sane(&folio->page, offset, bytes))
   466			return 0;
   467		if (WARN_ON_ONCE(!i->data_source))
   468			return 0;
   469	
   470		do {
   471			char *to = kmap_local_folio(folio, offset);
   472	
   473			n = bytes - copied;
 > 474			if (folio_test_partial_kmap(folio) &&
   475			    n > PAGE_SIZE - offset_in_page(offset))
   476				n = PAGE_SIZE - offset_in_page(offset);
   477	
   478			pagefault_disable();
   479			n = __copy_from_iter(to, n, i);
   480			pagefault_enable();
   481			kunmap_local(to);
   482			copied += n;
   483			offset += n;
   484		} while (copied != bytes && n > 0);
   485	
   486		return copied;
   487	}
   488	EXPORT_SYMBOL(copy_folio_from_iter_atomic);
   489	

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


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

* Re: [akpm-mm:mm-stable 290/329] lib/iov_iter.c:474:7: error: call to undeclared function 'folio_test_partial_kmap'; ISO C99 and later do not support implicit function declarations
  2025-06-02 12:12 [akpm-mm:mm-stable 290/329] lib/iov_iter.c:474:7: error: call to undeclared function 'folio_test_partial_kmap'; ISO C99 and later do not support implicit function declarations kernel test robot
@ 2025-06-02 15:00 ` Matthew Wilcox
  0 siblings, 0 replies; 2+ messages in thread
From: Matthew Wilcox @ 2025-06-02 15:00 UTC (permalink / raw)
  To: kernel test robot
  Cc: llvm, oe-kbuild-all, Andrew Morton, Linux Memory Management List

On Mon, Jun 02, 2025 at 08:12:44PM +0800, kernel test robot wrote:
> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-stable
> head:   0b43b8bc8ef88bb45b018b2d4853d38bfc5ce2a7
> commit: d9736929445e7f4c60f0093af61ff0b52e2d4412 [290/329] iov: remove copy_page_from_iter_atomic()

Thanks!

> >> lib/iov_iter.c:474:7: error: call to undeclared function 'folio_test_partial_kmap'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
>      474 |                 if (folio_test_partial_kmap(folio) &&

It looks like mm-stable is based on the wrong commit.  It appears to
be based on v6.15-rc6 while folio_test_partial_kmap() was added during
the v6.16 merge window.  While Linus' tree will never fail to build,
anyone ending up on this branch due to a bisect decision will find an
unbuildable tree.


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

end of thread, other threads:[~2025-06-02 15:00 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-06-02 12:12 [akpm-mm:mm-stable 290/329] lib/iov_iter.c:474:7: error: call to undeclared function 'folio_test_partial_kmap'; ISO C99 and later do not support implicit function declarations kernel test robot
2025-06-02 15:00 ` Matthew Wilcox

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