linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [linux-next:master 6383/7397] mm/page_io.c:283:41: error: implicit declaration of function 'swap_dev_pos'
@ 2024-06-21  2:10 kernel test robot
  2024-06-22  2:02 ` Andrew Morton
  0 siblings, 1 reply; 3+ messages in thread
From: kernel test robot @ 2024-06-21  2:10 UTC (permalink / raw)
  To: Kairui Song
  Cc: oe-kbuild-all, Linux Memory Management List, Andrew Morton, Huang, Ying

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head:   b992b79ca8bc336fa8e2c80990b5af80ed8f36fd
commit: d2b0c82185149e17ca3efc51c74c643c21668d63 [6383/7397] mm/swap: get the swap device offset directly
config: x86_64-randconfig-014-20240202 (https://download.01.org/0day-ci/archive/20240621/202406210911.j0JhlO0N-lkp@intel.com/config)
compiler: gcc-13 (Ubuntu 13.2.0-4ubuntu3) 13.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240621/202406210911.j0JhlO0N-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/202406210911.j0JhlO0N-lkp@intel.com/

All error/warnings (new ones prefixed by >>):

   mm/page_io.c:78:5: warning: no previous prototype for 'generic_swapfile_activate' [-Wmissing-prototypes]
      78 | int generic_swapfile_activate(struct swap_info_struct *sis,
         |     ^~~~~~~~~~~~~~~~~~~~~~~~~
   mm/page_io.c:179:5: error: redefinition of 'swap_writepage'
     179 | int swap_writepage(struct page *page, struct writeback_control *wbc)
         |     ^~~~~~~~~~~~~~
   In file included from mm/page_io.c:28:
   mm/swap.h:105:19: note: previous definition of 'swap_writepage' with type 'int(struct page *, struct writeback_control *)'
     105 | static inline int swap_writepage(struct page *p, struct writeback_control *wbc)
         |                   ^~~~~~~~~~~~~~
   mm/page_io.c: In function 'swap_writepage':
   mm/page_io.c:209:9: error: implicit declaration of function '__swap_writepage'; did you mean 'swap_writepage'? [-Werror=implicit-function-declaration]
     209 |         __swap_writepage(folio, wbc);
         |         ^~~~~~~~~~~~~~~~
         |         swap_writepage
   mm/page_io.c: At top level:
   mm/page_io.c:252:5: warning: no previous prototype for 'sio_pool_init' [-Wmissing-prototypes]
     252 | int sio_pool_init(void)
         |     ^~~~~~~~~~~~~
   In file included from include/asm-generic/bug.h:22,
                    from arch/x86/include/asm/bug.h:87,
                    from include/linux/bug.h:5,
                    from include/linux/mmdebug.h:5,
                    from include/linux/mm.h:6,
                    from mm/page_io.c:14:
   mm/page_io.c: In function 'sio_write_complete':
>> mm/page_io.c:283:41: error: implicit declaration of function 'swap_dev_pos' [-Werror=implicit-function-declaration]
     283 |                                    ret, swap_dev_pos(page_swap_entry(page)));
         |                                         ^~~~~~~~~~~~
   include/linux/printk.h:436:33: note: in definition of macro 'printk_index_wrap'
     436 |                 _p_func(_fmt, ##__VA_ARGS__);                           \
         |                                 ^~~~~~~~~~~
   include/linux/printk.h:658:17: note: in expansion of macro 'printk'
     658 |                 printk(fmt, ##__VA_ARGS__);                             \
         |                 ^~~~~~
   include/linux/printk.h:672:9: note: in expansion of macro 'printk_ratelimited'
     672 |         printk_ratelimited(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__)
         |         ^~~~~~~~~~~~~~~~~~
   mm/page_io.c:282:17: note: in expansion of macro 'pr_err_ratelimited'
     282 |                 pr_err_ratelimited("Write error %ld on dio swapfile (%llu)\n",
         |                 ^~~~~~~~~~~~~~~~~~
>> include/linux/kern_levels.h:5:25: warning: format '%llu' expects argument of type 'long long unsigned int', but argument 3 has type 'int' [-Wformat=]
       5 | #define KERN_SOH        "\001"          /* ASCII Start Of Header */
         |                         ^~~~~~
   include/linux/printk.h:436:25: note: in definition of macro 'printk_index_wrap'
     436 |                 _p_func(_fmt, ##__VA_ARGS__);                           \
         |                         ^~~~
   include/linux/printk.h:658:17: note: in expansion of macro 'printk'
     658 |                 printk(fmt, ##__VA_ARGS__);                             \
         |                 ^~~~~~
   include/linux/printk.h:672:9: note: in expansion of macro 'printk_ratelimited'
     672 |         printk_ratelimited(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__)
         |         ^~~~~~~~~~~~~~~~~~
   include/linux/kern_levels.h:11:25: note: in expansion of macro 'KERN_SOH'
      11 | #define KERN_ERR        KERN_SOH "3"    /* error conditions */
         |                         ^~~~~~~~
   include/linux/printk.h:672:28: note: in expansion of macro 'KERN_ERR'
     672 |         printk_ratelimited(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__)
         |                            ^~~~~~~~
   mm/page_io.c:282:17: note: in expansion of macro 'pr_err_ratelimited'
     282 |                 pr_err_ratelimited("Write error %ld on dio swapfile (%llu)\n",
         |                 ^~~~~~~~~~~~~~~~~~
   mm/page_io.c: In function 'swap_writepage_bdev_sync':
   mm/page_io.c:343:33: error: implicit declaration of function 'swap_folio_sector'; did you mean 'zswap_folio_swapin'? [-Werror=implicit-function-declaration]
     343 |         bio.bi_iter.bi_sector = swap_folio_sector(folio);
         |                                 ^~~~~~~~~~~~~~~~~
         |                                 zswap_folio_swapin
   mm/page_io.c: At top level:
   mm/page_io.c:375:6: warning: no previous prototype for '__swap_writepage' [-Wmissing-prototypes]
     375 | void __swap_writepage(struct folio *folio, struct writeback_control *wbc)
         |      ^~~~~~~~~~~~~~~~
   mm/page_io.c:375:6: warning: conflicting types for '__swap_writepage'; have 'void(struct folio *, struct writeback_control *)'
   mm/page_io.c:209:9: note: previous implicit declaration of '__swap_writepage' with type 'void(struct folio *, struct writeback_control *)'
     209 |         __swap_writepage(folio, wbc);
         |         ^~~~~~~~~~~~~~~~
   mm/page_io.c:393:6: error: redefinition of 'swap_write_unplug'
     393 | void swap_write_unplug(struct swap_iocb *sio)
         |      ^~~~~~~~~~~~~~~~~
   mm/swap.h:80:20: note: previous definition of 'swap_write_unplug' with type 'void(struct swap_iocb *)'
      80 | static inline void swap_write_unplug(struct swap_iocb *sio)
         |                    ^~~~~~~~~~~~~~~~~
   mm/page_io.c: In function 'swap_read_folio_fs':
   mm/page_io.c:440:25: error: implicit declaration of function 'swap_read_unplug'; did you mean 'swap_write_unplug'? [-Werror=implicit-function-declaration]
     440 |                         swap_read_unplug(sio);
         |                         ^~~~~~~~~~~~~~~~
         |                         swap_write_unplug
   mm/page_io.c: At top level:
   mm/page_io.c:496:6: error: redefinition of 'swap_read_folio'
     496 | void swap_read_folio(struct folio *folio, bool synchronous,
         |      ^~~~~~~~~~~~~~~
   mm/swap.h:76:20: note: previous definition of 'swap_read_folio' with type 'void(struct folio *, bool,  struct swap_iocb **)' {aka 'void(struct folio *, _Bool,  struct swap_iocb **)'}
      76 | static inline void swap_read_folio(struct folio *folio, bool do_poll,
         |                    ^~~~~~~~~~~~~~~
   mm/page_io.c:537:6: warning: no previous prototype for '__swap_read_unplug' [-Wmissing-prototypes]
     537 | void __swap_read_unplug(struct swap_iocb *sio)
         |      ^~~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors


vim +/swap_dev_pos +283 mm/page_io.c

   264	
   265	static void sio_write_complete(struct kiocb *iocb, long ret)
   266	{
   267		struct swap_iocb *sio = container_of(iocb, struct swap_iocb, iocb);
   268		struct page *page = sio->bvec[0].bv_page;
   269		int p;
   270	
   271		if (ret != sio->len) {
   272			/*
   273			 * In the case of swap-over-nfs, this can be a
   274			 * temporary failure if the system has limited
   275			 * memory for allocating transmit buffers.
   276			 * Mark the page dirty and avoid
   277			 * folio_rotate_reclaimable but rate-limit the
   278			 * messages but do not flag PageError like
   279			 * the normal direct-to-bio case as it could
   280			 * be temporary.
   281			 */
   282			pr_err_ratelimited("Write error %ld on dio swapfile (%llu)\n",
 > 283					   ret, swap_dev_pos(page_swap_entry(page)));
   284			for (p = 0; p < sio->pages; p++) {
   285				page = sio->bvec[p].bv_page;
   286				set_page_dirty(page);
   287				ClearPageReclaim(page);
   288			}
   289		}
   290	
   291		for (p = 0; p < sio->pages; p++)
   292			end_page_writeback(sio->bvec[p].bv_page);
   293	
   294		mempool_free(sio, sio_pool);
   295	}
   296	

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


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

* Re: [linux-next:master 6383/7397] mm/page_io.c:283:41: error: implicit declaration of function 'swap_dev_pos'
  2024-06-21  2:10 [linux-next:master 6383/7397] mm/page_io.c:283:41: error: implicit declaration of function 'swap_dev_pos' kernel test robot
@ 2024-06-22  2:02 ` Andrew Morton
  2024-06-22  5:54   ` Philip Li
  0 siblings, 1 reply; 3+ messages in thread
From: Andrew Morton @ 2024-06-22  2:02 UTC (permalink / raw)
  To: kernel test robot
  Cc: Kairui Song, oe-kbuild-all, Linux Memory Management List, Huang, Ying

On Fri, 21 Jun 2024 10:10:36 +0800 kernel test robot <lkp@intel.com> wrote:

> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
> head:   b992b79ca8bc336fa8e2c80990b5af80ed8f36fd
> commit: d2b0c82185149e17ca3efc51c74c643c21668d63 [6383/7397] mm/swap: get the swap device offset directly
> config: x86_64-randconfig-014-20240202 (https://download.01.org/0day-ci/archive/20240621/202406210911.j0JhlO0N-lkp@intel.com/config)
> compiler: gcc-13 (Ubuntu 13.2.0-4ubuntu3) 13.2.0
> reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240621/202406210911.j0JhlO0N-lkp@intel.com/reproduce)

I can't immediately see why this would happen and the above links are going 404.



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

* Re: [linux-next:master 6383/7397] mm/page_io.c:283:41: error: implicit declaration of function 'swap_dev_pos'
  2024-06-22  2:02 ` Andrew Morton
@ 2024-06-22  5:54   ` Philip Li
  0 siblings, 0 replies; 3+ messages in thread
From: Philip Li @ 2024-06-22  5:54 UTC (permalink / raw)
  To: Andrew Morton
  Cc: kernel test robot, Kairui Song, oe-kbuild-all,
	Linux Memory Management List, Huang, Ying

On Fri, Jun 21, 2024 at 07:02:54PM -0700, Andrew Morton wrote:
> On Fri, 21 Jun 2024 10:10:36 +0800 kernel test robot <lkp@intel.com> wrote:
> 
> > tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
> > head:   b992b79ca8bc336fa8e2c80990b5af80ed8f36fd
> > commit: d2b0c82185149e17ca3efc51c74c643c21668d63 [6383/7397] mm/swap: get the swap device offset directly
> > config: x86_64-randconfig-014-20240202 (https://download.01.org/0day-ci/archive/20240621/202406210911.j0JhlO0N-lkp@intel.com/config)
> > compiler: gcc-13 (Ubuntu 13.2.0-4ubuntu3) 13.2.0
> > reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240621/202406210911.j0JhlO0N-lkp@intel.com/reproduce)
> 
> I can't immediately see why this would happen and the above links are going 404.

Sorry for this false report, it is a wrong bisection.

Kindly ignore this or any one that uses x86_64-randconfig-014-20240202 kconfig,
and we will resolve the bot bug asap.

> 
> 


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

end of thread, other threads:[~2024-06-22  5:55 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-06-21  2:10 [linux-next:master 6383/7397] mm/page_io.c:283:41: error: implicit declaration of function 'swap_dev_pos' kernel test robot
2024-06-22  2:02 ` Andrew Morton
2024-06-22  5:54   ` Philip Li

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