OSDN Git Service

tracing: bpf: Hide bpf trace events when they are not used
authorSteven Rostedt (VMware) <rostedt@goodmis.org>
Thu, 12 Oct 2017 22:40:02 +0000 (18:40 -0400)
committerDavid S. Miller <davem@davemloft.net>
Mon, 16 Oct 2017 20:10:20 +0000 (21:10 +0100)
commit9185a610f8f7f1b4e4d28c9de27d1969cf58e0f1
treee3add3c3a46dcfd40605ecee36193a94b430a209
parent0da4af00b2ed3dbe46788623a696c4169447eadc
tracing: bpf: Hide bpf trace events when they are not used

All the trace events defined in include/trace/events/bpf.h are only
used when CONFIG_BPF_SYSCALL is defined. But this file gets included by
include/linux/bpf_trace.h which is included by the networking code with
CREATE_TRACE_POINTS defined.

If a trace event is created but not used it still has data structures
and functions created for its use, even though nothing is using them.
To not waste space, do not define the BPF trace events in bpf.h unless
CONFIG_BPF_SYSCALL is defined.

Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
Acked-by: Alexei Starovoitov <ast@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/trace/events/bpf.h
kernel/bpf/core.c