Subject: Re: linux-next: build failure after merge of the block tree

From: Stephen Rothwell <[email-masked]>
Date: Tue, 10 Aug 2021 20:52:43 +1000

Hi all,

On Tue, 10 Aug 2021 20:31:34 +1000 Stephen Rothwell <[email-masked]> wrote:
>
> After merging the block tree, today's linux-next build (or32
> or1ksim_defconfig) failed like this:
> 
> mm/page-writeback.c:2044:6: error: redefinition of 'laptop_sync_completion'
>  2044 | void laptop_sync_completion(void)
>       |      ^~~~~~~~~~~~~~~~~~~~~~
> In file included from include/linux/memcontrol.h:22,
>                  from include/linux/swap.h:9,
>                  from mm/page-writeback.c:20:
> include/linux/writeback.h:345:20: note: previous definition of 'laptop_sync_completion' was here
>   345 | static inline void laptop_sync_completion(void) { }
>       |                    ^~~~~~~~~~~~~~~~~~~~~~
> 
> Caused by commit
> 
>   5ed964f8e54e ("mm: hide laptop_mode_wb_timer entirely behind the BDI API")
> 
> This build does not have CONFIG_BLOCK set.

These as well:

In file included from include/linux/workqueue.h:9,
                 from include/linux/mm_types.h:16,
                 from include/linux/mmzone.h:21,
                 from include/linux/gfp.h:6,
                 from include/linux/xarray.h:14,
                 from include/linux/radix-tree.h:19,
                 from include/linux/fs.h:15,
                 from include/linux/backing-dev.h:13,
                 from mm/backing-dev.c:5:
mm/backing-dev.c: In function 'bdi_alloc':
mm/backing-dev.c:821:42: error: 'laptop_mode_timer_fn' undeclared (first use in this function)
  821 |  timer_setup(&bdi->laptop_mode_wb_timer, laptop_mode_timer_fn, 0);
      |                                          ^~~~~~~~~~~~~~~~~~~~
include/linux/timer.h:126:28: note: in definition of macro '__init_timer'
  126 |  init_timer_key((_timer), (_fn), (_flags), NULL, NULL)
      |                            ^~~
mm/backing-dev.c:821:2: note: in expansion of macro 'timer_setup'
  821 |  timer_setup(&bdi->laptop_mode_wb_timer, laptop_mode_timer_fn, 0);
      |  ^~~~~~~~~~~
mm/backing-dev.c:821:42: note: each undeclared identifier is reported only once for each function it appears in
  821 |  timer_setup(&bdi->laptop_mode_wb_timer, laptop_mode_timer_fn, 0);
      |                                          ^~~~~~~~~~~~~~~~~~~~
include/linux/timer.h:126:28: note: in definition of macro '__init_timer'
  126 |  init_timer_key((_timer), (_fn), (_flags), NULL, NULL)
      |                            ^~~
mm/backing-dev.c:821:2: note: in expansion of macro 'timer_setup'
  821 |  timer_setup(&bdi->laptop_mode_wb_timer, laptop_mode_timer_fn, 0);
      |  ^~~~~~~~~~~

-- 
Cheers,
Stephen Rothwell

-- 
Cheers,
Stephen Rothwell