From 25d9c0301d36f4d80eb8bc8211e46900f177daf2 Mon Sep 17 00:00:00 2001 From: Arnaldo Carvalho de Melo <acme@redhat.com> Date: Fri, 28 Feb 2025 18:17:30 -0300 Subject: [PATCH] perf maps: Set the kmaps for newly created/added kernel maps When using __maps__insert_sorted() the map kmaps field needs to be initialized, as we need kernel maps to work with map__kmap(). Fix it by using the newly introduced map__set_kmap() method. Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> Acked-by: Namhyung Kim <namhyung@kernel.org> Reviewed-by: Ian Rogers <irogers@google.com> Link: https://lore.kernel.org/lkml/Z74V0hZXrTLM6VIJ@x1 Link: https://lore.kernel.org/r/20250228211734.33781-3-acme@kernel.org Signed-off-by: Namhyung Kim <namhyung@kernel.org> --- tools/perf/util/maps.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tools/perf/util/maps.c b/tools/perf/util/maps.c index 51b507233269..8c5f5d79cd24 100644 --- a/tools/perf/util/maps.c +++ b/tools/perf/util/maps.c @@ -798,6 +798,9 @@ static int __maps__insert_sorted(struct maps *maps, unsigned int first_after_ind } RC_CHK_ACCESS(maps)->nr_maps = nr_maps + to_add; maps__set_maps_by_name_sorted(maps, false); + map__set_kmap_maps(new1, maps); + map__set_kmap_maps(new2, maps); + check_invariants(maps); return 0; }