linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] perf: Fix pass 0 to PTR_ERR
@ 2022-05-05 13:57 YueHaibing
  0 siblings, 0 replies; only message in thread
From: YueHaibing @ 2022-05-05 13:57 UTC (permalink / raw)
  To: peterz, mingo, acme, mark.rutland, alexander.shishkin, jolsa,
	namhyung, ast, daniel, andrii, kafai, songliubraving, yhs,
	john.fastabend, kpsingh, christylee
  Cc: linux-perf-users, linux-kernel, netdev, bpf, YueHaibing

Passing NULL to PTR_ERR will result in 0 (success), also move
evlist__find_evsel_by_str() behind for minor optimization.

Fixes: 924b1cd61148 ("perf: Stop using bpf_map__def() API")
Signed-off-by: YueHaibing <yuehaibing@huawei.com>
---
 tools/perf/util/bpf-loader.c | 15 ++++++++-------
 tools/perf/util/bpf_map.c    |  2 +-
 2 files changed, 9 insertions(+), 8 deletions(-)

diff --git a/tools/perf/util/bpf-loader.c b/tools/perf/util/bpf-loader.c
index f8ad581ea247..b301ffc8c6e7 100644
--- a/tools/perf/util/bpf-loader.c
+++ b/tools/perf/util/bpf-loader.c
@@ -1253,21 +1253,22 @@ __bpf_map__config_event(struct bpf_map *map,
 			struct parse_events_term *term,
 			struct evlist *evlist)
 {
-	struct bpf_map_op *op;
 	const char *map_name = bpf_map__name(map);
-	struct evsel *evsel = evlist__find_evsel_by_str(evlist, term->val.str);
+	struct bpf_map_op *op;
+	struct evsel *evsel;
 
+	if (!map) {
+		pr_debug("Map '%s' is invalid\n", map_name);
+		return -BPF_LOADER_ERRNO__INTERNAL;
+	}
+
+	evsel = evlist__find_evsel_by_str(evlist, term->val.str);
 	if (!evsel) {
 		pr_debug("Event (for '%s') '%s' doesn't exist\n",
 			 map_name, term->val.str);
 		return -BPF_LOADER_ERRNO__OBJCONF_MAP_NOEVT;
 	}
 
-	if (!map) {
-		pr_debug("Map '%s' is invalid\n", map_name);
-		return PTR_ERR(map);
-	}
-
 	/*
 	 * No need to check key_size and value_size:
 	 * kernel has already checked them.
diff --git a/tools/perf/util/bpf_map.c b/tools/perf/util/bpf_map.c
index c863ae0c5cb5..c72aee6a91ee 100644
--- a/tools/perf/util/bpf_map.c
+++ b/tools/perf/util/bpf_map.c
@@ -36,7 +36,7 @@ int bpf_map__fprintf(struct bpf_map *map, FILE *fp)
 		return fd;
 
 	if (!map)
-		return PTR_ERR(map);
+		return -EINVAL;
 
 	err = -ENOMEM;
 	key = malloc(bpf_map__key_size(map));
-- 
2.17.1


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2022-05-05 13:57 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-05-05 13:57 [PATCH] perf: Fix pass 0 to PTR_ERR YueHaibing

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).