sample/bpf: Make perf_event_read() static
PATCH 1/1 sample/bpf: Make perf_event_read() static
While testing Joe's conversion of samples/bpf/ to use tools/lib/bpf/ I noticed some warnings, do you guys mind if I put patches like the one below in my tree, pushing to Ingo soon?
Or is there anything subtle against doing so?
----
While building samples/bpf/ on a Fedora Rawhide container, with clang/llvm 3.9 I noticed this:
root@1e797fdfbf4f linux]# make -j4 O=/tmp/build/linux/ samples/bpf/ make[1]: Entering directory '/tmp/build/linux'
CHK include/config/kernel.release GEN ./Makefile CHK include/generated/uapi/linux/version.h
Using /git/linux as source for kernel
<SNIP>
HOSTCC samples/bpf/trace_output_user.o
/git/linux/samples/bpf/trace_output_user.c:64:6: warning: no previous prototype for 'perf_event_read' [-Wmissing-prototypes]
void perf_event_read(print_fn fn)
^~~~~~~~~~~~~~~
HOSTLD samples/bpf/trace_output
make[1]: Leaving directory '/tmp/build/linux'
Shutup the compiler by setting that function as static.
--
samples/bpf/trace_output_user.c +1 -1
@@ -61,7 +61,7 @@ struct perf_event_sample {char data[]; }; -void perf_event_read (print_fn fn) +static void perf_event_read (print_fn fn) {__u64 data_tail = header->data_tail;__u64 data_head = header->data_head;
Quoted 6 lines · Arnaldo Carvalho de Melo
While testing Joe's conversion of
samples/bpf/to usetools/lib/bpf/I noticed some warnings, do you guys mind if I put patches like the one below in my tree, pushing to Ingo soon?Or is there anything subtle against doing so?
Fwiw, no objections from my side, there is currently nothing in net/net-next tree that could cause conflicts regarding the below change, so should be good to take this route instead.
Quoted 20 lines
----
While building
samples/bpf/on a Fedora Rawhide container, with clang/llvm 3.9 I noticed this:root@1e797fdfbf4f linux]# make -j4 O=/tmp/build/linux/
samples/bpf/make[1]: Entering directory '/tmp/build/linux'CHK include/config/kernel.release GEN ./Makefile CHK include/generated/uapi/linux/version.hUsing /git/linux as source for kernel
<SNIP>
HOSTCCsamples/bpf/trace_output_user.o
/git/linux/samples/bpf/trace_output_user.c:64:6: warning: no previous prototype for 'perf_event_read' [-Wmissing-prototypes]
voidperf_event_read(print_fn fn)^~~~~~~~~~~~~~~HOSTLD
samples/bpf/trace_output
make[1]: Leaving directory '/tmp/build/linux'
Quoted 8 lines
Shutup the compiler by setting that function as static.
Cc Alexei Starovoitov <[email protected]>Cc Daniel Borkmann <[email protected]>Cc Wang Nan <[email protected]>,Cc Joe Stringer <[email protected]>Signed-off-by Arnaldo Carvalho de Melo <[email protected]>
Thanks,
Daniel
Em Thu, Dec 15, 2016 at 04:49:07PM +0100, Daniel Borkmann escreveu:
Quoted 11 lines · Arnaldo Carvalho de Melo
Quoted 6 lines
While testing Joe's conversion of
samples/bpf/to usetools/lib/bpf/I noticed some warnings, do you guys mind if I put patches like the one below in my tree, pushing to Ingo soon?Or is there anything subtle against doing so?
Fwiw, no objections from my side, there is currently nothing in
net/net-nexttree that could cause conflicts regarding the below change, so should be good to take this route instead.
Thanks a lot!
Ah, since it seems the overhead of having clang/llvm/bc/findutils in addition to what I have in the containers for distros with suitable packages is small, I'll probably end up building samples/bpf/ in those containers, in addition to building perf with/without libelf and objtool.
This way I'll catch build problems everytime I prepare my pull reqs to Ingo and hopefully fix them then.
- Arnaldo
Quoted 33 lines
Quoted 20 lines
----
While building
samples/bpf/on a Fedora Rawhide container, with clang/llvm 3.9 I noticed this:root@1e797fdfbf4f linux]# make -j4 O=/tmp/build/linux/
samples/bpf/make[1]: Entering directory '/tmp/build/linux'CHK include/config/kernel.release GEN ./Makefile CHK include/generated/uapi/linux/version.hUsing /git/linux as source for kernel
<SNIP>
HOSTCCsamples/bpf/trace_output_user.o
/git/linux/samples/bpf/trace_output_user.c:64:6: warning: no previous prototype for 'perf_event_read' [-Wmissing-prototypes]
voidperf_event_read(print_fn fn)^~~~~~~~~~~~~~~HOSTLD
samples/bpf/trace_output
make[1]: Leaving directory '/tmp/build/linux'Quoted 8 lines
Shutup the compiler by setting that function as static.
Cc Alexei Starovoitov <[email protected]>Cc Daniel Borkmann <[email protected]>Cc Wang Nan <[email protected]>,Cc Joe Stringer <[email protected]>Signed-off-by Arnaldo Carvalho de Melo <[email protected]>Acked-by Daniel Borkmann <[email protected]>Thanks,
Daniel
tip-bot for Arnaldo Carvalho de Melo
merge bot[tip:perf/urgent] samples/bpf: Make perf_event_read() static
In reply to Arnaldo Carvalho de Melosamples/bpf: Make perf_event_read() static
Commit-ID: 96c2fb69b92fcf6006dfb3017d6d887f8321407b Gitweb: http://git.kernel.org/tip/96c2fb69b92fcf6006dfb3017d6d887f8321407b Author: Arnaldo Carvalho de Melo <[email protected]> AuthorDate: Thu, 15 Dec 2016 12:29:27 -0300 Committer: Arnaldo Carvalho de Melo <[email protected]> CommitDate: Tue, 20 Dec 2016 09:37:33 -0300
samples/bpf: Make perf_event_read() static
While testing Joe's conversion of samples/bpf/ to use tools/lib/bpf/ I noticed some warnings building samples/bpf/ on a Fedora Rawhide container, with clang/llvm 3.9 I noticed this:
[root@1e797fdfbf4f linux]# make -j4 O=/tmp/build/linux/ samples/bpf/ make[1]: Entering directory '/tmp/build/linux'
CHK include/config/kernel.release
GEN ./Makefile
CHK include/generated/uapi/linux/version.h
Using /git/linux as source for kernel
<SNIP>
HOSTCC samples/bpf/trace_output_user.o
/git/linux/samples/bpf/trace_output_user.c:64:6: warning: no previous
prototype for 'perf_event_read' [-Wmissing-prototypes]
void perf_event_read(print_fn fn)
^~~~~~~~~~~~~~~
HOSTLD samples/bpf/trace_output make[1]: Leaving directory '/tmp/build/linux'
Shut up the compiler by making that function static.
--- samples/bpf/trace_output_user.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
samples/bpf/trace_output_user.c +1 -1
@@ -61,7 +61,7 @@ struct perf_event_sample {char data[]; }; -void perf_event_read (print_fn fn) +static void perf_event_read (print_fn fn) {__u64 data_tail = header->data_tail;__u64 data_head = header->data_head;