perf ftrace: Use atomic inc to update histogram in BPF
authorNamhyung Kim <namhyung@kernel.org>
Thu, 27 Feb 2025 19:12:23 +0000 (11:12 -0800)
committerNamhyung Kim <namhyung@kernel.org>
Thu, 13 Mar 2025 07:18:10 +0000 (00:18 -0700)
It should use an atomic instruction to update even if the histogram is
keyed by delta as it's also used for stats.

Cc: Gabriele Monaco <gmonaco@redhat.com>
Link: https://lore.kernel.org/r/20250227191223.1288473-3-namhyung@kernel.org
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
tools/perf/util/bpf_skel/func_latency.bpf.c

index ad70547446786c54a9b8090d975a34542984517f..e731a79a753a4d2d524f77151a071e0ca8473aaa 100644 (file)
@@ -142,7 +142,7 @@ do_lookup:
                if (!hist)
                        return 0;
 
-               *hist += 1;
+               __sync_fetch_and_add(hist, 1);
 
                __sync_fetch_and_add(&total, delta); // always in nsec
                __sync_fetch_and_add(&count, 1);