Skip to content

Commit cce6a2d

Browse files
olsajiriPeter Zijlstra
authored andcommitted
bpf: Check flags for branch stack in bpf_read_branch_records helper
Recent commit [1] changed branch stack data indication from br_stack pointer to sample_flags in perf_sample_data struct. We need to check sample_flags for PERF_SAMPLE_BRANCH_STACK bit for valid branch stack data. [1] a9a931e ("perf: Use sample_flags for branch stack") Fixes: a9a931e ("perf: Use sample_flags for branch stack") Signed-off-by: Jiri Olsa <jolsa@kernel.org> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Reviewed-by: Kan Liang <kan.liang@linux.intel.com> Link: https://lore.kernel.org/r/20220927203259.590950-1-jolsa@kernel.org
1 parent 4674ffe commit cce6a2d

1 file changed

Lines changed: 3 additions & 0 deletions

File tree

kernel/trace/bpf_trace.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1507,6 +1507,9 @@ BPF_CALL_4(bpf_read_branch_records, struct bpf_perf_event_data_kern *, ctx,
15071507
if (unlikely(flags & ~BPF_F_GET_BRANCH_RECORDS_SIZE))
15081508
return -EINVAL;
15091509

1510+
if (unlikely(!(ctx->data->sample_flags & PERF_SAMPLE_BRANCH_STACK)))
1511+
return -ENOENT;
1512+
15101513
if (unlikely(!br_stack))
15111514
return -ENOENT;
15121515

0 commit comments

Comments
 (0)