All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/8] Update to C11, fix signal undefined behavior
@ 2022-10-24 18:19 Ian Rogers
  2022-10-24 18:19 ` [PATCH v2 1/8] perf build: Update to C standard to gnu11 Ian Rogers
                   ` (8 more replies)
  0 siblings, 9 replies; 10+ messages in thread
From: Ian Rogers @ 2022-10-24 18:19 UTC (permalink / raw)
  To: Leo Yan, Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
	Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
	Adrian Hunter, Alexey Bayduraev, German Gomez, linux-perf-users,
	linux-kernel
  Cc: Stephane Eranian, Ian Rogers

The use of C11 is mainstream in the kernel [1]. There was some
confusion on volatile and signal handlers in [2] for which atomics
(present in C11) make things clearer. Switch to using volatile
sig_atomic_t as per [3]. Thanks to Leo Yan <leo.yan@linaro.org> for
the suggestions.

[1] https://lore.kernel.org/lkml/CAHk-=whWbENRz-vLY6vpESDLj6kGUTKO3khGtVfipHqwewh2HQ@mail.gmail.com/
[2] https://lore.kernel.org/lkml/20221024011024.462518-1-irogers@google.com/
[3] https://wiki.sei.cmu.edu/confluence/display/c/SIG31-C.+Do+not+access+shared+objects+in+signal+handlers

v2. Remove unneeded stdatomic.h includes for sig_atomic_t as it is
    declared in signal.h.

Ian Rogers (8):
  perf build: Update to C standard to gnu11
  perf record: Use sig_atomic_t for signal handlers
  perf daemon: Use sig_atomic_t to avoid UB
  perf ftrace: Use sig_atomic_t to avoid UB
  perf session: Change type to avoid UB
  perf stat: Use sig_atomic_t to avoid UB
  perf top: Use sig_atomic_t to avoid UB
  perf trace: Use sig_atomic_t to avoid UB

 tools/perf/Makefile.config  | 2 +-
 tools/perf/builtin-daemon.c | 2 +-
 tools/perf/builtin-ftrace.c | 4 ++--
 tools/perf/builtin-record.c | 8 ++++----
 tools/perf/builtin-stat.c   | 8 ++++----
 tools/perf/builtin-top.c    | 4 ++--
 tools/perf/builtin-trace.c  | 4 ++--
 tools/perf/util/session.c   | 3 ++-
 8 files changed, 18 insertions(+), 17 deletions(-)

-- 
2.38.0.135.g90850a2211-goog


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2022-11-03 13:06 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-10-24 18:19 [PATCH v2 0/8] Update to C11, fix signal undefined behavior Ian Rogers
2022-10-24 18:19 ` [PATCH v2 1/8] perf build: Update to C standard to gnu11 Ian Rogers
2022-10-24 18:19 ` [PATCH v2 2/8] perf record: Use sig_atomic_t for signal handlers Ian Rogers
2022-10-24 18:19 ` [PATCH v2 3/8] perf daemon: Use sig_atomic_t to avoid UB Ian Rogers
2022-10-24 18:19 ` [PATCH v2 4/8] perf ftrace: " Ian Rogers
2022-10-24 18:19 ` [PATCH v2 5/8] perf session: Change type " Ian Rogers
2022-10-24 18:19 ` [PATCH v2 6/8] perf stat: Use sig_atomic_t " Ian Rogers
2022-10-24 18:19 ` [PATCH v2 7/8] perf top: " Ian Rogers
2022-10-24 18:19 ` [PATCH v2 8/8] perf trace: " Ian Rogers
2022-11-03 13:04 ` [PATCH v2 0/8] Update to C11, fix signal undefined behavior Arnaldo Carvalho de Melo

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.