Re: [PATCH v2 3/7] libbpf hashmap: Fix signedness warnings

From: Andrii Nakryiko
Date: Fri May 15 2020 - 15:40:46 EST


On Fri, May 15, 2020 at 9:51 AM Ian Rogers <irogers@xxxxxxxxxx> wrote:
>
> Fixes the following warnings:
>
> hashmap.c: In function âhashmap__clearâ:
> hashmap.h:150:20: error: comparison of integer expressions of different signedness: âintâ and âsize_tâ {aka âlong unsigned intâ} [-Werror=sign-compare]
> 150 | for (bkt = 0; bkt < map->cap; bkt++) \
>
> hashmap.c: In function âhashmap_growâ:
> hashmap.h:150:20: error: comparison of integer expressions of different signedness: âintâ and âsize_tâ {aka âlong unsigned intâ} [-Werror=sign-compare]
> 150 | for (bkt = 0; bkt < map->cap; bkt++) \
>
> Signed-off-by: Ian Rogers <irogers@xxxxxxxxxx>
> ---

Acked-by: Andrii Nakryiko <andriin@xxxxxx>

> tools/lib/bpf/hashmap.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/tools/lib/bpf/hashmap.c b/tools/lib/bpf/hashmap.c
> index cffb96202e0d..a405dad068f5 100644
> --- a/tools/lib/bpf/hashmap.c
> +++ b/tools/lib/bpf/hashmap.c
> @@ -60,7 +60,7 @@ struct hashmap *hashmap__new(hashmap_hash_fn hash_fn,
> void hashmap__clear(struct hashmap *map)
> {
> struct hashmap_entry *cur, *tmp;
> - int bkt;
> + size_t bkt;
>
> hashmap__for_each_entry_safe(map, cur, tmp, bkt) {
> free(cur);
> @@ -100,8 +100,7 @@ static int hashmap_grow(struct hashmap *map)
> struct hashmap_entry **new_buckets;
> struct hashmap_entry *cur, *tmp;
> size_t new_cap_bits, new_cap;
> - size_t h;
> - int bkt;
> + size_t h, bkt;
>
> new_cap_bits = map->cap_bits + 1;
> if (new_cap_bits < HASHMAP_MIN_CAP_BITS)
> --
> 2.26.2.761.g0e0b3e54be-goog
>