summaryrefslogtreecommitdiffstats
path: root/tools/perf/util/map.c
diff options
context:
space:
mode:
authorArnaldo Carvalho de Melo <acme@redhat.com>2019-10-25 20:14:50 +0200
committerArnaldo Carvalho de Melo <acme@redhat.com>2019-11-06 19:43:06 +0100
commitee2555b612869a763563c5389ad789a52db0afd1 (patch)
treef7218056fe47ed6db143278f63d65dc1bad1a049 /tools/perf/util/map.c
parentperf dso: Add dso__data_write_cache_addr() (diff)
downloadlinux-ee2555b612869a763563c5389ad789a52db0afd1.tar.xz
linux-ee2555b612869a763563c5389ad789a52db0afd1.zip
perf map: Check if the map still has some refcounts on exit
We were checking just if it was still on some rb tree, but that is not the only way that this map can still have references, map->refcnt is there exactly for this, use it. Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: Andi Kleen <ak@linux.intel.com> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Namhyung Kim <namhyung@kernel.org> Link: https://lkml.kernel.org/n/tip-hany65tbeavsax7n3xvwl9pc@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/util/map.c')
-rw-r--r--tools/perf/util/map.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/tools/perf/util/map.c b/tools/perf/util/map.c
index eec9b282c047..c9ba49566981 100644
--- a/tools/perf/util/map.c
+++ b/tools/perf/util/map.c
@@ -288,7 +288,7 @@ bool map__has_symbols(const struct map *map)
static void map__exit(struct map *map)
{
- BUG_ON(!RB_EMPTY_NODE(&map->rb_node));
+ BUG_ON(refcount_read(&map->refcnt) != 0);
dso__zput(map->dso);
}