diff options
| author | Mark Brown <broonie@kernel.org> | 2020-06-17 12:39:12 +0100 |
|---|---|---|
| committer | Mark Brown <broonie@kernel.org> | 2020-06-17 12:39:12 +0100 |
| commit | 6870112c46c867f50cd27570860a05bd82614b5c (patch) | |
| tree | bd9f13f6ab25072809564460a34bf0fb40900069 /tools/lib/bpf/bpf_tracing.h | |
| parent | 6f1cf5257acc6e6242ddf2f52bc7912aed77b79f (diff) | |
| parent | b3a9e3b9622ae10064826dccb4f7a52bd88c7407 (diff) | |
Merge tag 'v5.8-rc1' into regulator-5.8
Linux 5.8-rc1
Diffstat (limited to 'tools/lib/bpf/bpf_tracing.h')
| -rw-r--r-- | tools/lib/bpf/bpf_tracing.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/tools/lib/bpf/bpf_tracing.h b/tools/lib/bpf/bpf_tracing.h index 48a9c7c69ef1..58eceb884df3 100644 --- a/tools/lib/bpf/bpf_tracing.h +++ b/tools/lib/bpf/bpf_tracing.h @@ -413,4 +413,20 @@ typeof(name(0)) name(struct pt_regs *ctx) \ } \ static __always_inline typeof(name(0)) ____##name(struct pt_regs *ctx, ##args) +/* + * BPF_SEQ_PRINTF to wrap bpf_seq_printf to-be-printed values + * in a structure. + */ +#define BPF_SEQ_PRINTF(seq, fmt, args...) \ + ({ \ + _Pragma("GCC diagnostic push") \ + _Pragma("GCC diagnostic ignored \"-Wint-conversion\"") \ + static const char ___fmt[] = fmt; \ + unsigned long long ___param[] = { args }; \ + _Pragma("GCC diagnostic pop") \ + int ___ret = bpf_seq_printf(seq, ___fmt, sizeof(___fmt), \ + ___param, sizeof(___param)); \ + ___ret; \ + }) + #endif |
