Messages in this thread | | | From | Namhyung Kim <> | Subject | Re: [PATCH 1/3] perf tools: Allow vmlinux to fallback to kallsyms on NO_LIBELF=1 | Date | Mon, 17 Nov 2014 11:04:40 +0900 |
| |
On Mon, 10 Nov 2014 09:11:41 -0300, Arnaldo Carvalho de Melo wrote: > Em Mon, Nov 10, 2014 at 03:53:06PM +0900, Namhyung Kim escreveu: >> On Fri, 7 Nov 2014 12:29:31 -0300, Arnaldo Carvalho de Melo wrote: >> > Em Fri, Nov 07, 2014 at 02:20:04PM +0900, Namhyung Kim escreveu: >> >> When libelf is not used, perf cannot not show symbol names since it >> >> doesn't access the ELF symbol table. But kernel is different as it >> >> can fallback to kallsyms. > >> >> It worked w/o libelf, but recent change to use vmlinux for kernel >> >> symbols break it. > >> >> With this change, it now can show kernel symbols again: > >> > Ok, but since you added that minimal ELF symtab loading, isn't better to >> > try that first, i.e. if we find a vmlinux file with a build-id and with >> > symbols in it... > >> > If that isn't the case, i.e. no vmlinux was found, then we fallback to >> > kallsyms, to check if that is available. > >> > I.e. with your new minimalistic ELF symtab loader if we have a suitable >> > vmlinux but no kallsyms, we end up resolving no symbols even having that >> > nice vmlinux :-) >> >> Yeah, maybe. But it'd add a substantial complexity also and I tried to >> make it simple and small only to show usual userspace symbols. >> >> I think that about a half of the complexity of the dso__load_sym() in >> symbol-elf.c came from the kernel (and module) support. And expecting > > Right, I agree that thing grew too complex, reducing that complexity is > something we should do when we have the chance. I.e. perhaps we could > separate kernel/modules handling out of it, even if just at source code > level at first...
Hmm.. okay. I'll try.
Thanks, Namhyung
> >> kallsyms on the system is not a high barrier IMHO. So I decided to just >> fall back to kallsyms for kernel dsos. Mayby we can add the kernel >> support incrementally later. > > The suggestion came because you did that minimalistic reader, which if > can be used for vmlinux files, would be great, as resolving vmlinux > samples is such a major usecase :-)
| |