perf map: Use map->dso->kernel + map__kmaps() in map__kmaps()

Its equivalent to using map->groups to obtain the machine struct.

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-bdbazuj4ggrmzxdviaqdrdwh@git.kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent 56b2147f
...@@ -244,18 +244,11 @@ struct map *map__new2(u64 start, struct dso *dso) ...@@ -244,18 +244,11 @@ struct map *map__new2(u64 start, struct dso *dso)
return map; return map;
} }
/*
* Use this and __map__is_kmodule() for map instances that are in
* machine->kmaps, and thus have map->groups->machine all properly set, to
* disambiguate between the kernel and modules.
*
* When the need arises, introduce map__is_{kernel,kmodule)() that
* checks (map->groups != NULL && map->groups->machine != NULL &&
* map->dso->kernel) before calling __map__is_{kernel,kmodule}())
*/
bool __map__is_kernel(const struct map *map) bool __map__is_kernel(const struct map *map)
{ {
return machine__kernel_map(map->groups->machine) == map; if (!map->dso->kernel)
return false;
return machine__kernel_map(map__kmaps((struct map *)map)->machine) == map;
} }
bool __map__is_extra_kernel_map(const struct map *map) bool __map__is_extra_kernel_map(const struct map *map)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment