summaryrefslogtreecommitdiff
path: root/tools/lib/bpf/hashmap.c
diff options
context:
space:
mode:
authorMauricio Vásquez <mauricio@kinvolk.io>2022-01-07 10:26:19 -0500
committerAndrii Nakryiko <andrii@kernel.org>2022-01-12 17:01:36 -0800
commitfba60b171a0322830b446dd28170092c47243d39 (patch)
tree02b727a151b345636d95b4c39a83947cd9d123db /tools/lib/bpf/hashmap.c
parentfe8152b38d3a994c4c6fdbc0cd6551d569a5715a (diff)
libbpf: Use IS_ERR_OR_NULL() in hashmap__free()
hashmap__new() uses ERR_PTR() to return an error so it's better to use IS_ERR_OR_NULL() in order to check the pointer before calling free(). This will prevent freeing an invalid pointer if somebody calls hashmap__free() with the result of a failed hashmap__new() call. Signed-off-by: Mauricio Vásquez <mauricio@kinvolk.io> Signed-off-by: Andrii Nakryiko <andrii@kernel.org> Acked-by: Song Liu <songliubraving@fb.com> Link: https://lore.kernel.org/bpf/20220107152620.192327-1-mauricio@kinvolk.io
Diffstat (limited to 'tools/lib/bpf/hashmap.c')
-rw-r--r--tools/lib/bpf/hashmap.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/tools/lib/bpf/hashmap.c b/tools/lib/bpf/hashmap.c
index 3c20b126d60d..aeb09c288716 100644
--- a/tools/lib/bpf/hashmap.c
+++ b/tools/lib/bpf/hashmap.c
@@ -75,7 +75,7 @@ void hashmap__clear(struct hashmap *map)
void hashmap__free(struct hashmap *map)
{
- if (!map)
+ if (IS_ERR_OR_NULL(map))
return;
hashmap__clear(map);
@@ -238,4 +238,3 @@ bool hashmap__delete(struct hashmap *map, const void *key,
return true;
}
-