From: "Wangnan (F)" <wangnan0@huawei.com>
To: Daniel Wagner <daniel.wagner@bmw-carit.de>, <ast@kernel.org>,
<agartrell@fb.com>, <acme@redhat.com>, <bblanco@plumgrid.com>,
<daniel@iogearbox.net>, <davem@davemloft.net>, <mingo@kernel.org>,
<jolsa@kernel.org>, <xiakaixu@huawei.com>,
<holzheu@linux.vnet.ibm.com>, <yang.shi@linaro.org>
Cc: <linux-kernel@vger.kernel.org>, <pi3orama@163.com>
Subject: Re: [PATCH 00/10] bpf samples: Uses libbpf in tools/lib to do BPF operations
Date: Thu, 17 Dec 2015 18:09:26 +0800 [thread overview]
Message-ID: <567289D6.9050209@huawei.com> (raw)
In-Reply-To: <56727259.80002@bmw-carit.de>
On 2015/12/17 16:29, Daniel Wagner wrote:
> On 12/17/2015 08:03 AM, Daniel Wagner wrote:
>> On 12/17/2015 07:51 AM, Wangnan (F) wrote:
>>> On 2015/12/17 14:38, Daniel Wagner wrote:
>>>> On 12/17/2015 06:23 AM, Wang Nan wrote:
>>>>> Since we already have libbpf in tools/lib, we don't need to maintain
>>>>> another bpf loader and operations library in samples/bpf.
>>>>>
>>>>> In patchset:
>>>>>
>>>>> Patch 1/10 - 7/10 improves libbpf, add missing features to support
>>>>> samples,
>>>>>
>>>>> Patch 8/10 adds utils.[ch], which creates similar API like old
>>>>> bpf_load.c and libbpf.c.
>>>>>
>>>>> Patch 9/10 replace all sampels to use API provides by utils.[ch] and
>>>>> libbpf.
>>>>>
>>>>> Patch 10/10 removes unneeded files.
>>>> Which tree did you use for your patches? I tried to apply them against
>>>> mainline and net-next which didn't really work out.
>>> These patches based on Arnaldo's 'perf/core' because of those libbpf
>>> changes.
>> Okay, I'll try with this one.
> I applied those patches on top of
>
> 5c560cfcf1c0 ("tools subcmd: Rename subcmd header include guards")
>
> Patch number 2 didn't apply cleanly.
Because I have another patch in my local tree which also modifis bpf
Makefile:
http://lkml.kernel.org/g/1450316632-152513-1-git-send-email-wangnan0@huawei.com
sorry.
> After fixing this manually
> I was able to continue to the build step:
>
> $ make samples/bpf/
> CHK include/config/kernel.release
> CHK include/generated/uapi/linux/version.h
> CHK include/generated/utsrelease.h
> CHK include/generated/bounds.h
> CHK include/generated/timeconst.h
> CHK include/generated/asm-offsets.h
> CALL scripts/checksyscalls.sh
> make -C /home/wagi/src/linux/tools/lib/bpf O=/home/wagi/src/linux/samples/bpf/libbpf CFLAGS= LDFLAGS= V=1 /home/wagi/src/linux/samples/bpf/libbpf/libbpf.a
> No libelf found
> Makefile:203: recipe for target 'elfdep' failed
> make[2]: *** [elfdep] Error 255
> samples/bpf/Makefile:10: recipe for target 'samples/bpf/libbpf/libbpf.a' failed
> make[1]: *** [samples/bpf/libbpf/libbpf.a] Error 2
> Makefile:1550: recipe for target 'samples/bpf/' failed
> make: *** [samples/bpf/] Error 2
When you see this, could you please have a look at:
/home/wagi/src/linux/samples/bpf/libbpf/feature/test-*.make.output
?
This error means it can't find libelf on your platform, but it is not true obviously.
>
> Executing the above command line by myself in order
> to figure out what's going on ended in this mess:
>
>
> $ make -C /home/wagi/src/linux/tools/lib/bpf O=/home/wagi/src/linux/samples/bpf/libbpf CFLAGS= LDFLAGS= V=1 /home/wagi/src/linux/samples/bpf/libbpf/libbpf.a
> make: Entering directory '/home/wagi/src/linux/tools/lib/bpf'
>
> Auto-detecting system features:
> ... libelf: [ on ]
> ... bpf: [ on ]
>
> [...]
>
> samples/bpf/fds_example.c: In function ‘bpf_do_map’:
> samples/bpf/fds_example.c:78:9: warning: implicit declaration of function ‘bpf_pin_object’ [-Wimplicit-function-declaration]
> ret = bpf_pin_object(fd, file);
> ^
> samples/bpf/fds_example.c:82:8: warning: implicit declaration of function ‘bpf_get_pinned_object’ [-Wimplicit-function-declaration]
> fd = bpf_get_pinned_object(file);
> ^
> gcc -Lsamples/bpf/libbpf -o samples/bpf/fds_example samples/bpf/utils.o samples/bpf/fds_example.o -lelf -lbpf
> samples/bpf/fds_example.o: In function `main':
> fds_example.c:(.text.startup+0x20e): undefined reference to `bpf_pin_object'
> fds_example.c:(.text.startup+0x2b0): undefined reference to `bpf_pin_object'
> fds_example.c:(.text.startup+0x2f3): undefined reference to `bpf_get_pinned_object'
> fds_example.c:(.text.startup+0x344): undefined reference to `bpf_get_pinned_object'
> collect2: error: ld returned 1 exit status
> scripts/Makefile.host:100: recipe for target 'samples/bpf/fds_example' failed
> make[1]: *** [samples/bpf/fds_example] Error 1
> Makefile:1550: recipe for target 'samples/bpf/' failed
> make: *** [samples/bpf/] Error 2
> [wagi@handman linux (bpf-test)]$ make samples/bpf/
> CHK include/config/kernel.release
> CHK include/generated/uapi/linux/version.h
> CHK include/generated/utsrelease.h
> CHK include/generated/bounds.h
> CHK include/generated/timeconst.h
> CHK include/generated/asm-offsets.h
> CALL scripts/checksyscalls.sh
> HOSTLD samples/bpf/fds_example
> samples/bpf/fds_example.o: In function `main':
> fds_example.c:(.text.startup+0x20e): undefined reference to `bpf_pin_object'
> fds_example.c:(.text.startup+0x2b0): undefined reference to `bpf_pin_object'
> fds_example.c:(.text.startup+0x2f3): undefined reference to `bpf_get_pinned_object'
> fds_example.c:(.text.startup+0x344): undefined reference to `bpf_get_pinned_object'
> collect2: error: ld returned 1 exit status
>
Could you please check whether this patch:
bpf tools: Support BPF_OBJ_PIN and BPF_OBJ_GET
is applied properly?
Thank you.
next prev parent reply other threads:[~2015-12-17 10:15 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-17 5:23 Wang Nan
2015-12-17 5:23 ` [PATCH 01/10] bpf samples: bpf: Fix tracex5_kern.c compiling error Wang Nan
2015-12-17 5:23 ` [PATCH 02/10] bpf tools: Define LD and RM in Makefile for 'make -R' Wang Nan
2015-12-17 5:23 ` [PATCH 03/10] bpf tools: Add const decoretor to 'license' and 'insns' for bpf_load_program() Wang Nan
2015-12-17 5:23 ` [PATCH 04/10] bpf tools: Switch to uapi style type names Wang Nan
2015-12-17 5:23 ` [PATCH 05/10] bpf tools: Support load different type of programs Wang Nan
2015-12-17 5:23 ` [PATCH 06/10] bpf tools: Support new map operations Wang Nan
2015-12-17 6:06 ` Wangnan (F)
2015-12-17 6:09 ` [PATCH v2 " Wang Nan
2015-12-17 5:23 ` [PATCH 07/10] bpf tools: Support BPF_OBJ_PIN and BPF_OBJ_GET Wang Nan
2015-12-17 5:23 ` [PATCH 08/10] bpf samples: Add utils.[ch] for using BPF Wang Nan
2015-12-17 23:11 ` Alexei Starovoitov
2015-12-18 1:47 ` Wangnan (F)
2015-12-18 6:19 ` Alexei Starovoitov
2015-12-18 7:04 ` Wangnan (F)
2015-12-18 7:10 ` Wangnan (F)
2015-12-18 10:57 ` Daniel Borkmann
2015-12-18 11:18 ` pi3orama
2015-12-18 11:24 ` Daniel Borkmann
2015-12-19 0:35 ` Alexei Starovoitov
2015-12-17 5:23 ` [PATCH 09/10] bpf samples: Uses libbpf in tools/lib to deal with BPF operations Wang Nan
2015-12-17 5:23 ` [PATCH 10/10] bpf samples: Remove old BPF helpers Wang Nan
2015-12-17 6:38 ` [PATCH 00/10] bpf samples: Uses libbpf in tools/lib to do BPF operations Daniel Wagner
2015-12-17 6:51 ` Wangnan (F)
2015-12-17 7:03 ` Daniel Wagner
2015-12-17 8:29 ` Daniel Wagner
2015-12-17 10:09 ` Wangnan (F) [this message]
2015-12-17 13:46 ` Daniel Wagner
2015-12-18 3:04 ` Wangnan (F)
2015-12-18 8:49 ` Daniel Wagner
2015-12-18 10:56 ` [PATCH] tools build: Output more data during feature detection Wang Nan
2015-12-18 11:03 ` [PATCH 00/10] bpf samples: Uses libbpf in tools/lib to do BPF operations Wangnan (F)
2015-12-18 12:55 ` Daniel Wagner
2015-12-18 14:13 ` pi3orama
[not found] ` <66E52D4A-BA1C-456A-8E6F-975E07C083EE@163.com>
2015-12-18 14:22 ` Daniel Wagner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=567289D6.9050209@huawei.com \
--to=wangnan0@huawei.com \
--cc=acme@redhat.com \
--cc=agartrell@fb.com \
--cc=ast@kernel.org \
--cc=bblanco@plumgrid.com \
--cc=daniel.wagner@bmw-carit.de \
--cc=daniel@iogearbox.net \
--cc=davem@davemloft.net \
--cc=holzheu@linux.vnet.ibm.com \
--cc=jolsa@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=pi3orama@163.com \
--cc=xiakaixu@huawei.com \
--cc=yang.shi@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome