Depending on how vmlinux.lds is written, _etext might be the very first data symbol instead of the very last text symbol.
Don't require it to be a text symbol, accept any symbol type. Fixes: ed9adb2035b5 ("perf machine: Read also the end of the kernel") Signed-off-by: Christophe Leroy <christophe.le...@csgroup.eu> --- tools/perf/util/machine.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/perf/util/machine.c b/tools/perf/util/machine.c index 27d5345d2b30..9be2f4479f52 100644 --- a/tools/perf/util/machine.c +++ b/tools/perf/util/machine.c @@ -1003,7 +1003,7 @@ static int machine__get_running_kernel_start(struct machine *machine, err = kallsyms__get_symbol_start(filename, "_edata", &addr); if (err) - err = kallsyms__get_function_start(filename, "_etext", &addr); + err = kallsyms__get_symbol_start(filename, "_etext", &addr); if (!err) *end = addr; -- 2.47.0