diff options
author | Daniel Borkmann <daniel@iogearbox.net> | 2015-07-30 12:42:49 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-07-30 11:13:21 -0700 |
commit | b13138ef72178a13f34e33883f9f093f9e3b1bda (patch) | |
tree | 2de35c3471c854eb4e79fc504d19cd3dc688c896 /include/linux/filter.h | |
parent | 485d6511e71e5810f07eec29b884c98021e67911 (diff) | |
download | lwn-b13138ef72178a13f34e33883f9f093f9e3b1bda.tar.gz lwn-b13138ef72178a13f34e33883f9f093f9e3b1bda.zip |
bpf: also show process name/pid in bpf_jit_dump
It can be useful for testing to see the actual process/pid who is loading
a given filter. I was running some BPF test program and noticed unusual
filter loads from time to time, triggered by some other application in the
background. bpf_jit_disasm is still working after this change.
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Alexei Starovoitov <ast@plumgrid.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/filter.h')
-rw-r--r-- | include/linux/filter.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/include/linux/filter.h b/include/linux/filter.h index 6b025491120d..fa2cab985e57 100644 --- a/include/linux/filter.h +++ b/include/linux/filter.h @@ -12,6 +12,7 @@ #include <linux/linkage.h> #include <linux/printk.h> #include <linux/workqueue.h> +#include <linux/sched.h> #include <asm/cacheflush.h> @@ -438,8 +439,9 @@ void bpf_jit_free(struct bpf_prog *fp); static inline void bpf_jit_dump(unsigned int flen, unsigned int proglen, u32 pass, void *image) { - pr_err("flen=%u proglen=%u pass=%u image=%pK\n", - flen, proglen, pass, image); + pr_err("flen=%u proglen=%u pass=%u image=%pK from=%s pid=%d\n", flen, + proglen, pass, image, current->comm, task_pid_nr(current)); + if (image) print_hex_dump(KERN_ERR, "JIT code: ", DUMP_PREFIX_OFFSET, 16, 1, image, proglen, false); |