发自我的 iPhone
> 在 2015年9月2日,上午4:21,Arnaldo Carvalho de Melo <a...@redhat.com> 写道: > > Em Tue, Sep 01, 2015 at 05:19:17PM -0300, Arnaldo Carvalho de Melo escreveu: >> Em Sat, Aug 29, 2015 at 04:22:01AM +0000, Wang Nan escreveu: >>> From: He Kuang <heku...@huawei.com> >>> >>> Make perf-record command support --vmlinux option if BPF_PROLOGUE is on. >> >> Ok, this should be supported, i.e. letting the user specify a vmlinux >> path to use. >> >> But it shouldn't be _required_, i.e. we have things like vmlinux_path to >> try to find it in well known places. >> >> Right now it will search for it in the process of trying to load its >> symtab, but I think we should have a function that tries to find a >> vmlinux that matches the build-id of the running kernel, for things that >> want to have access directly to the ELF file with debuginfo without >> having to load the symtab in a struct dso, etc. >> >> I'll look at the next patches to check how you make use of this info... > > So, the do it all from 'perf record' is in not yet in this patchkit, > right? At least not in [ N/31 ] with N > 27, can you point me to it? > It is for patch 8/31, which create kprobe points using add_perf_probe_events(). Before this patch it won't search debug info, prevent us use argument like this: SEC("lock_page=lock_page page->flags") or probe at line number, expect it finds a valid vmlinux from the default path. Thank you. > - Arnaldo > >> - Arnaldo >> >>> 'perf record' needs vmlinux as the source of DWARF info to generate >>> prologue for BPF programs, so path of vmlinux should be specified. >>> >>> Short name 'k' has been taken by 'clockid'. This patch skips the short >>> option name and use '--vmlinux' for vmlinux path. >>> >>> Signed-off-by: He Kuang <heku...@huawei.com> >>> Signed-off-by: Wang Nan <wangn...@huawei.com> >>> Cc: Alexei Starovoitov <a...@plumgrid.com> >>> Cc: Brendan Gregg <brendan.d.gr...@gmail.com> >>> Cc: Daniel Borkmann <dan...@iogearbox.net> >>> Cc: David Ahern <dsah...@gmail.com> >>> Cc: He Kuang <heku...@huawei.com> >>> Cc: Jiri Olsa <jo...@kernel.org> >>> Cc: Kaixu Xia <xiaka...@huawei.com> >>> Cc: Masami Hiramatsu <masami.hiramatsu...@hitachi.com> >>> Cc: Namhyung Kim <namhy...@kernel.org> >>> Cc: Paul Mackerras <pau...@samba.org> >>> Cc: Peter Zijlstra <a.p.zijls...@chello.nl> >>> Cc: Zefan Li <lize...@huawei.com> >>> Cc: pi3or...@163.com >>> Cc: Arnaldo Carvalho de Melo <a...@redhat.com> >>> Link: >>> http://lkml.kernel.org/n/1436445342-1402-38-git-send-email-wangn...@huawei.com >>> --- >>> tools/perf/builtin-record.c | 4 ++++ >>> 1 file changed, 4 insertions(+) >>> >>> diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c >>> index 212718c..8eb39d5 100644 >>> --- a/tools/perf/builtin-record.c >>> +++ b/tools/perf/builtin-record.c >>> @@ -1100,6 +1100,10 @@ struct option __record_options[] = { >>> "clang binary to use for compiling BPF scriptlets"), >>> OPT_STRING(0, "clang-opt", &llvm_param.clang_opt, "clang options", >>> "options passed to clang when compiling BPF scriptlets"), >>> +#ifdef HAVE_BPF_PROLOGUE >>> + OPT_STRING(0, "vmlinux", &symbol_conf.vmlinux_name, >>> + "file", "vmlinux pathname"), >>> +#endif >>> #endif >>> OPT_END() >>> }; >>> -- >>> 2.1.0 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/