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

From: Andrew Morton <[email-masked]>
Date: Wed, 12 Mar 2025 08:24:52 -0700

On Wed, 12 Mar 2025 11:36:12 +1100 Stephen Rothwell <[email-masked]> wrote:

> After merging the mm tree, today's linux-next build (native powerpc perf)
> failed like this:
> 
> In file included from arch/powerpc/util/../../../util/pmu.h:5,
>                  from arch/powerpc/util/pmu.c:5:
> tools/include/linux/bitmap.h: In function 'bitmap_alloc':
> tools/include/linux/bitmap.h:83:69: error: unused parameter 'flags' [-Werror=unused-parameter]
>    83 | static inline unsigned long *bitmap_alloc(unsigned int nbits, gfp_t flags)
>       |                                                               ~~~~~~^~~~~
> cc1: all warnings being treated as errors

Maybe we should turn off -Wno-unused-parameter for tools/.  The rest of
the kernel extensively expects that unused parameters to inlined
functions are acceptable, for stuff like this:

#else /* CONFIG_SWAP */
static inline struct swap_info_struct *swp_swap_info(swp_entry_t entry)
{
	return NULL;
}

static inline struct swap_info_struct *get_swap_device(swp_entry_t entry)
{
	return NULL;
}

static inline void put_swap_device(struct swap_info_struct *si)
{
}

so why do we make tools/ different?