summaryrefslogtreecommitdiffstats
path: root/kernel/bpf/local_storage.c
diff options
context:
space:
mode:
authorAlexei Starovoitov <ast@kernel.org>2020-07-23 22:20:32 -0700
committerAlexei Starovoitov <ast@kernel.org>2020-07-25 20:16:35 -0700
commit90065c0647efd6e2ec8983a702c4ba813af51b93 (patch)
treec87d99dabe2c42a178399bffc9c9e94c2be496a2 /kernel/bpf/local_storage.c
parent909e446b3204642bdb54ab2f225652be89d91268 (diff)
parent346938e9380cc0b2ad8e2566389cdc570386fe22 (diff)
downloadlinux-90065c0647efd6e2ec8983a702c4ba813af51b93.tar.bz2
Merge branch 'fix-bpf_get_stack-with-PEBS'
Song Liu says: ==================== Calling get_perf_callchain() on perf_events from PEBS entries may cause unwinder errors. To fix this issue, perf subsystem fetches callchain early, and marks perf_events are marked with __PERF_SAMPLE_CALLCHAIN_EARLY. Similar issue exists when BPF program calls get_perf_callchain() via helper functions. For more information about this issue, please refer to discussions in [1]. This set fixes this issue with helper proto bpf_get_stackid_pe and bpf_get_stack_pe. [1] https://lore.kernel.org/lkml/ED7B9430-6489-4260-B3C5-9CFA2E3AA87A@fb.com/ Changes v4 => v5: 1. Return -EPROTO instead of -EINVAL on PERF_EVENT_IOC_SET_BPF errors. (Alexei) 2. Let libbpf print a hint message when PERF_EVENT_IOC_SET_BPF returns -EPROTO. (Alexei) Changes v3 => v4: 1. Fix error check logic in bpf_get_stackid_pe and bpf_get_stack_pe. (Alexei) 2. Do not allow attaching BPF programs with bpf_get_stack|stackid to perf_event with precise_ip > 0, but not proper callchain. (Alexei) 3. Add selftest get_stackid_cannot_attach. Changes v2 => v3: 1. Fix handling of stackmap skip field. (Andrii) 2. Simplify the code in a few places. (Andrii) Changes v1 => v2: 1. Simplify the design and avoid introducing new helper function. (Andrii) ==================== Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Diffstat (limited to 'kernel/bpf/local_storage.c')
0 files changed, 0 insertions, 0 deletions