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

From: Stephen Rothwell
Date: Mon May 02 2022 - 04:15:56 EST


Hi all,

After merging the bitmap tree, today's linux-next build (native perf)
failed like this:

../lib/bitmap.c:21:5: error: conflicting types for '__bitmap_weight_cmp'; have 'int(const long unsigned int *, unsigned int, int)'
21 | int __bitmap_weight_cmp(const unsigned long *bitmap, unsigned int bits, int num)
| ^~~~~~~~~~~~~~~~~~~
In file included from ../lib/bitmap.c:6:
tools/include/linux/bitmap.h:15:5: note: previous declaration of '__bitmap_weight_cmp' with type 'int(const long unsigned int *, unsigned int, unsigned int)'
15 | int __bitmap_weight_cmp(const unsigned long *bitmap, unsigned int bits,
| ^~~~~~~~~~~~~~~~~~~
../lib/bitmap.c: In function '__bitmap_weight_cmp':
../lib/bitmap.c:26:50: error: comparison of integer expressions of different signedness: 'unsigned int' and 'int' [-Werror=sign-compare]
26 | if (w + bits - k * BITS_PER_LONG < num)
| ^
../lib/bitmap.c:31:23: error: comparison of integer expressions of different signedness: 'unsigned int' and 'int' [-Werror=sign-compare]
31 | if (w > num)
| ^
cc1: all warnings being treated as errors
tools/perf/../lib/bitmap.c:21:5: error: conflicting types for '__bitmap_weight_cmp'; have 'int(const long unsigned int *, unsigned int, int)'
21 | int __bitmap_weight_cmp(const unsigned long *bitmap, unsigned int bits, int num)
| ^~~~~~~~~~~~~~~~~~~
In file included from tools/perf/../lib/bitmap.c:6:
tools/include/linux/bitmap.h:15:5: note: previous declaration of '__bitmap_weight_cmp' with type 'int(const long unsigned int *, unsigned int, unsigned int)'
15 | int __bitmap_weight_cmp(const unsigned long *bitmap, unsigned int bits,
| ^~~~~~~~~~~~~~~~~~~
tools/perf/../lib/bitmap.c: In function '__bitmap_weight_cmp':
tools/perf/../lib/bitmap.c:26:50: error: comparison of integer expressions of different signedness: 'unsigned int' and 'int' [-Werror=sign-compare]
26 | if (w + bits - k * BITS_PER_LONG < num)
| ^
tools/perf/../lib/bitmap.c:31:23: error: comparison of integer expressions of different signedness: 'unsigned int' and 'int' [-Werror=sign-compare]
31 | if (w > num)
| ^
cc1: all warnings being treated as errors

Probably caused by commit

4252f3915e02 ("tools: bitmap: sync bitmap_weight")

I have used the bitmap tree from next-20220429 for today.

--
Cheers,
Stephen Rothwell

Attachment: pgp2yWULdfqOY.pgp
Description: OpenPGP digital signature