]> git.itanic.dy.fi Git - linux-stable/commit
perf lock contention: Check race in tstamp elem creation
authorNamhyung Kim <namhyung@kernel.org>
Fri, 20 Oct 2023 20:47:40 +0000 (13:47 -0700)
committerNamhyung Kim <namhyung@kernel.org>
Wed, 25 Oct 2023 17:02:47 +0000 (10:02 -0700)
commit6a070573f290f99a6129ac3e13b9df521a1a65de
tree61889f17e90cc264f7645ecbdf1a5065622a68eb
parentd99317f214ca3d381f7b17a75c41263885664e06
perf lock contention: Check race in tstamp elem creation

When pelem is NULL, it'd create a new entry with zero data.  But it
might be preempted by IRQ/NMI just before calling bpf_map_update_elem()
then there's a chance to call it twice for the same pid.  So it'd be
better to use BPF_NOEXIST flag and check the return value to prevent
the race.

Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Acked-by: Ian Rogers <irogers@google.com>
Cc: Hao Luo <haoluo@google.com>
Cc: Song Liu <song@kernel.org>
Cc: bpf@vger.kernel.org
Link: https://lore.kernel.org/r/20231020204741.1869520-2-namhyung@kernel.org
tools/perf/util/bpf_skel/lock_contention.bpf.c