Merge branch 'bpf-bpftool-probes'
authorDaniel Borkmann <daniel@iogearbox.net>
Wed, 26 Feb 2020 17:34:34 +0000 (18:34 +0100)
committerDaniel Borkmann <daniel@iogearbox.net>
Wed, 26 Feb 2020 17:34:39 +0000 (18:34 +0100)
commit4bc988464bb193d67c93ddb2fcd1de127d815b6c
tree151ce51a79c919a4810982e05a76c62802281d43
parent3494bec0f6ac8ac06e0ad7c35933db345b2c5a83
parent736332740e295d9b6fc524f0447448f6089911d9
Merge branch 'bpf-bpftool-probes'

Michal Rostecki says:

====================
Feature probes in bpftool related to bpf_probe_write_user and
bpf_trace_printk helpers emit dmesg warnings which might be confusing
for people running bpftool on production environments. This patch series
addresses that by filtering them out by default and introducing the new
positional argument "full" which enables all available probes.

The main motivation behind those changes is ability the fact that some
probes (for example those related to "trace" or "write_user" helpers)
emit dmesg messages which might be confusing for people who are running
on production environments. For details see the Cilium issue[0].

v1 -> v2:
- Do not expose regex filters to users, keep filtering logic internal,
expose only the "full" option for including probes which emit dmesg
warnings.

v2 -> v3:
- Do not use regex for filtering out probes, use function IDs directly.
- Fix bash completion - in v2 only "prefix" was proposed after "macros",
  "dev" and "kernel" were not.
- Rephrase the man page paragraph, highlight helper function names.
- Remove tests which parse the plain output of bpftool (except the
  header/macros test), focus on testing JSON output instead.
- Add test which compares the output with and without "full" option.

v3 -> v4:
- Use enum to check for helper functions.
- Make selftests compatible with older versions of Python 3.x than 3.7.

  [0] https://github.com/cilium/cilium/issues/10048
====================

Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>