On Thu, Jun 11, 2015 at 04:09:36PM +0800, Wangnan (F) wrote: > On 2015/6/11 15:45, Namhyung Kim wrote: > >On Tue, Jun 09, 2015 at 04:43:19PM -0700, Alexei Starovoitov wrote: > >>On 6/8/15 10:50 PM, Wang Nan wrote: > >>>perf_bpf_config() is added to parse 'bpf' section in perf config file. > >>>Following is an example: > >>> > >>> [bpf] > >>> clang-path = /llvm/bin/x86_64-linux-clang" > >>> llc-path = /llvm/bin/x86_64-linux-llc" > >>> clang-opt = "-nostdinc -isystem /llvm/lib/clang/include > >>> -I/kernel/arch/x86/include ..." > >>> llc-opt = "" > >>a section to specify -I flags to compile prog.c is useful, > >>but users shouldn't be populating it manually for kernel headers. > >>How about adding a script that can figure out $(LINUXINCLUDE) > >>automatically ? > >Maybe a dummy question. For what reason it needs such headers? Is it > >possible to have a (part of?) copy of needed bits in the perf source? > > > >Thanks, > >Namhyung > > It is improtant for eBPF script that it should be able to extract > information > from kernel pointers. For example: to extract registers from 'struct > pt_regs' and > to extract fields from 'struct page *'. I believe this is an improtant > reason > why we decide to use C-like language instead of designing a DLS. Therefore, > when > compiling .c to .o, kernel source is mandatory. Since we don't want to limit > the > ability of data accessing of eBPF scripts, we have to give it ability to > access all > kernel headers.
Understood, thank you for the explanation! Namhyung -- 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/