mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/herbert/cryptodev-2.6.git
synced 2026-04-23 05:56:14 -04:00
maps may belong to >1 thread. In contexts like symbolization information from the thread may be useful, such as the ELF machine. As the maps can be gained from the thread switch from holding maps in struct map_symbol to holding the thread. Holding the maps in addr_location is also redundant, switch this to using thread__maps. Reviewed-by: James Clark <james.clark@linaro.org> Signed-off-by: Ian Rogers <irogers@google.com> Cc: Aditya Bodkhe <aditya.b1@linux.ibm.com> Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: Albert Ou <aou@eecs.berkeley.edu> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> Cc: Alexandre Ghiti <alex@ghiti.fr> Cc: Athira Rajeev <atrajeev@linux.ibm.com> Cc: Bill Wendling <morbo@google.com> Cc: Dr. David Alan Gilbert <linux@treblig.org> Cc: Guo Ren <guoren@kernel.org> Cc: Howard Chu <howardchu95@gmail.com> Cc: Ingo Molnar <mingo@redhat.com> Cc: Jiri Olsa <jolsa@kernel.org> Cc: John Garry <john.g.garry@oracle.com> Cc: Julia Lawall <Julia.Lawall@inria.fr> Cc: Justin Stitt <justinstitt@google.com> Cc: Krzysztof Łopatowski <krzysztof.m.lopatowski@gmail.com> Cc: Leo Yan <leo.yan@linux.dev> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Nathan Chancellor <nathan@kernel.org> Cc: Nick Desaulniers <nick.desaulniers+lkml@gmail.com> Cc: Palmer Dabbelt <palmer@dabbelt.com> Cc: Paul Walmsley <pjw@kernel.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Sergei Trofimovich <slyich@gmail.com> Cc: Shimin Guo <shimin.guo@skydio.com> Cc: Suchit Karunakaran <suchitkarunakaran@gmail.com> Cc: Thomas Falcon <thomas.falcon@intel.com> Cc: Tianyou Li <tianyou.li@intel.com> Cc: Will Deacon <will@kernel.org> Cc: Zecheng Li <zecheng@google.com> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
34 lines
713 B
C
34 lines
713 B
C
// SPDX-License-Identifier: GPL-2.0
|
|
#ifndef __PERF_MAP_SYMBOL
|
|
#define __PERF_MAP_SYMBOL 1
|
|
|
|
#include <linux/types.h>
|
|
|
|
struct thread;
|
|
struct maps;
|
|
struct map;
|
|
struct symbol;
|
|
|
|
struct map_symbol {
|
|
struct thread *thread;
|
|
struct map *map;
|
|
struct symbol *sym;
|
|
};
|
|
|
|
struct addr_map_symbol {
|
|
struct map_symbol ms;
|
|
u64 addr;
|
|
u64 al_addr;
|
|
char al_level;
|
|
u64 phys_addr;
|
|
u64 data_page_size;
|
|
};
|
|
|
|
void map_symbol__exit(struct map_symbol *ms);
|
|
void addr_map_symbol__exit(struct addr_map_symbol *ams);
|
|
|
|
void map_symbol__copy(struct map_symbol *dst, struct map_symbol *src);
|
|
void addr_map_symbol__copy(struct addr_map_symbol *dst, struct addr_map_symbol *src);
|
|
|
|
#endif // __PERF_MAP_SYMBOL
|