mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH v2 0/2] rwonce: Introduce {READ,WRITE}_ONCE_THIS_CPU()
@ 2026-10-02 15:17 Kunwu Chan
  2026-10-02 15:17 ` [PATCH v2 1/2] rwonce: Add READ_ONCE_THIS_CPU() and WRITE_ONCE_THIS_CPU() Kunwu Chan
  2026-10-02 15:17 ` [PATCH v2 2/2] timers/nohz: Mark got_idle_tick accesses as same-CPU races Kunwu Chan
  0 siblings, 2 replies; 4+ messages in thread
From: Kunwu Chan @ 2026-10-02 15:17 UTC (permalink / raw)
  To: arnd, anna-maria, frederic, mingo, tglx
  Cc: linux-arch, linux-kernel, Kunwu Chan

This is a rework of [1] following the discussion with Thomas and Paul.

v1 marked the got_idle_tick accesses with plain READ_ONCE()/WRITE_ONCE().
However, the plain variants do not distinguish an intentional race
between execution contexts on the same CPU from an access that may race
across CPUs. This distinction allows concurrency tools such as KCSAN
to tell these cases apart, so that stricter task-vs-interrupt race
checking can be enabled without false positives on intentional
same-CPU races.

The first patch introduces READ_ONCE_THIS_CPU() and
WRITE_ONCE_THIS_CPU() for this purpose, currently as simple wrappers
around the plain variants. The second patch converts got_idle_tick
to use them.

Changes since v1 [1]:
 - Introduce {READ,WRITE}_ONCE_THIS_CPU() instead of reusing the
   plain variants. (Thomas Gleixner)

 - Expand the commit messages to state the KCSAN rationale. (Thomas
   Gleixner)

[1] https://lore.kernel.org/all/20260920085434.2918331-1-kunwu.chan@gmail.com/

Kunwu Chan (2):
  rwonce: Add READ_ONCE_THIS_CPU() and WRITE_ONCE_THIS_CPU()
  timers/nohz: Mark got_idle_tick accesses as same-CPU races

 include/asm-generic/rwonce.h | 11 +++++++++++
 kernel/time/tick-sched.c     |  6 +++---
 2 files changed, 14 insertions(+), 3 deletions(-)

-- 
2.43.0


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

end of thread, other threads:[~2026-10-02 15:44 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-10-02 15:17 [PATCH v2 0/2] rwonce: Introduce {READ,WRITE}_ONCE_THIS_CPU() Kunwu Chan
2026-10-02 15:17 ` [PATCH v2 1/2] rwonce: Add READ_ONCE_THIS_CPU() and WRITE_ONCE_THIS_CPU() Kunwu Chan
2026-10-02 15:44   ` Paul E. McKenney
2026-10-02 15:17 ` [PATCH v2 2/2] timers/nohz: Mark got_idle_tick accesses as same-CPU races Kunwu Chan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®