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

Yury Norov
2022-09-27T00:40:06Z

On Tue, Sep 27, 2022 at 12:53:48AM +0100, broonie@kernel.org wrote:
> Hi all,
>
> After merging the bitmap tree, today's linux-next build (x86
> allmodconfig) failed like this:

Hmm, this weird. I checked the next-20220923, and the drivers' code
mentioned in the log differs from what I see, and looks correct.
bitmap_weight() definition hasn't been changed in bitmap-for-next
patches.

Allmodconfig build looks good to me.

Check what I see in next-20220923 below.

Thanks,
Yury

> /tmp/next/build/drivers/net/ethernet/marvell/octeontx2/af/rvu_npc_hash.c:492:3: note: in expansion of macro 'dev_err'
> 492 | dev_err(rvu->dev, "%s: No space in id bitmap (%lu)\n",
> | ^~~~~~~
> /tmp/next/build/drivers/net/ethernet/marvell/octeontx2/af/rvu_npc_hash.c:492:51: note: format string is defined here
> 492 | dev_err(rvu->dev, "%s: No space in id bitmap (%lu)\n",
> | ~~^
> | |
> | long unsigned int
> | %u

dev_err(rvu->dev, "%s: No space in id bitmap (%d)\n",
__func__, bitmap_weight(table->id_bmap, table->tot_ids));

> /tmp/next/build/drivers/net/ethernet/marvell/octeontx2/af/rvu_npc_hash.c:525:22: error: format '%lu' expects argument of type 'long unsigned int', but argument 4 has type 'unsigned int' [-Werror=format=]
> 525 | dev_info(rvu->dev, "%s: No space in exact cam table, weight=%lu\n", __func__,
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

dev_info(rvu->dev, "%s: No space in exact cam table, weight=%u\n", __func__,
bitmap_weight(table->cam_table.bmap, table->cam_table.depth));jj

> /tmp/next/build/drivers/gpu/drm/i915/gt/intel_sseu.c:867:39: error: format '%lu' expects argument of type 'long unsigned int', but argument 4 has type 'unsigned int' [-Werror=format=]
> 867 | seq_printf(m, " %s Geometry DSS: %lu\n", type,
> | ~~^
> | |
> | long unsigned int
> | %u
> 868 | bitmap_weight(sseu->geometry_subslice_mask.xehp,
> | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> | |
> | unsigned int
> 869 | XEHP_BITMAP_BITS(sseu->geometry_subslice_mask)));

seq_printf(m, " %s Geometry DSS: %u\n", type,
bitmap_weight(sseu->geometry_subslice_mask.xehp,
XEHP_BITMAP_BITS(sseu->geometry_subslice_mask)));

> | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> /tmp/next/build/drivers/gpu/drm/i915/gt/intel_sseu.c:870:38: error: format '%lu' expects argument of type 'long unsigned int', but argument 4 has type 'unsigned int' [-Werror=format=]
> 870 | seq_printf(m, " %s Compute DSS: %lu\n", type,
> | ~~^
> | |
> | long unsigned int
> | %u
> 871 | bitmap_weight(sseu->compute_subslice_mask.xehp,
> | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> | |
> | unsigned int
> 872 | XEHP_BITMAP_BITS(sseu->compute_subslice_mask)));

bitmap_weight(sseu->compute_subslice_mask.xehp,
XEHP_BITMAP_BITS(sseu->compute_subslice_mask)));

> | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> cc1: all warnings being treated as errors
>
> These look like they have probably been there for a while but I've used
> a slightly different compiler version to Stephen so they're showing up
> now once the bitmap tree is merged. I will have a proper look tomorrow
> hopefully but for now I've dropped the bitmap tree as it's getting very
> late and it is likely I'll not finish the -next run today at all.