Thread (7 messages) 7 messages, 2 authors, 2021-12-13

Re: [PATCH] perf stat: Fix NULL vs IS_ERR() checking in check_per_pkg

From: German Gomez <hidden>
Date: 2021-12-12 14:55:36
Also in: lkml

Hi Miaoqian,

On 12/12/2021 04:23, Miaoqian Lin wrote:
quoted hunk ↗ jump to hunk
The hashmap__new() function does not return NULL on errors. It returns
ERR_PTR(-ENOMEM). Using IS_ERR() to check the return value
to fix this.

Signed-off-by: Miaoqian Lin <redacted>
---
 tools/perf/util/stat.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/tools/perf/util/stat.c b/tools/perf/util/stat.c
index 09ea334586f2..a77052680087 100644
--- a/tools/perf/util/stat.c
+++ b/tools/perf/util/stat.c
@@ -311,8 +311,8 @@ static int check_per_pkg(struct evsel *counter,
 
 	if (!mask) {
 		mask = hashmap__new(pkg_id_hash, pkg_id_equal, NULL);
-		if (!mask)
-			return -ENOMEM;
+		if (IS_ERR(mask))
+			return PTR_ERR(mask);
I see that callers to "ids__new" are also missing these checks. Did you
consider patching those also?

Thanks,
German
 
 		counter->per_pkg_mask = mask;
 	}
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help