Files
linux-cryptodev-2.6/include/linux
Paul E. McKenney c27cea4416 rcu: Re-implement RCU Tasks Trace in terms of SRCU-fast
This commit saves more than 500 lines of RCU code by re-implementing
RCU Tasks Trace in terms of SRCU-fast.  Follow-up work will remove
more code that does not cause problems by its presence, but that is no
longer required.

This variant places smp_mb() in rcu_read_{,un}lock_trace(), and in the
same place that srcu_read_{,un}lock() would put them. These smp_mb()
calls will be removed on common-case architectures in a later commit.
In the meantime, it serves to enforce ordering between the underlying
srcu_read_{,un}lock_fast() markers and the intervening critical section,
even on architectures that permit attaching tracepoints on regions of
code not watched by RCU.  Such architectures defeat SRCU-fast's use of
implicit single-instruction, interrupts-disabled, and atomic-operation
RCU read-side critical sections, which have no effect when RCU is not
watching.  The aforementioned later commit will insert these smp_mb()
calls only on architectures that have not used noinstr to prevent
attaching tracepoints to code where RCU is not watching.

[ paulmck: Apply kernel test robot, Boqun Feng, and Zqiang feedback. ]
[ paulmck: Split out Tiny SRCU fixes per Andrii Nakryiko feedback. ]

Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
Tested-by: kernel test robot <oliver.sang@intel.com>
Cc: Andrii Nakryiko <andrii@kernel.org>
Cc: Alexei Starovoitov <ast@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: bpf@vger.kernel.org
Reviewed-by: Joel Fernandes <joelagnelf@nvidia.com>
Signed-off-by: Boqun Feng <boqun.feng@gmail.com>
2026-01-01 16:39:46 +08:00
..
2025-10-22 07:54:33 +02:00
2025-11-11 10:01:30 +01:00
2025-11-18 22:26:02 +05:30
2025-10-13 11:27:52 +01:00
2025-12-04 07:19:26 -07:00
2025-11-21 11:21:31 +01:00
2025-10-27 09:56:27 -07:00
2025-11-04 12:36:57 +01:00
2025-10-22 07:55:00 +02:00
2025-11-01 12:44:49 -05:00
2025-12-13 20:04:32 +12:00
2025-10-29 18:28:29 -07:00
2025-11-04 12:36:02 +01:00
2025-10-22 07:53:15 +02:00
2025-10-24 21:39:27 +02:00
2025-11-23 12:30:40 +01:00
2025-11-20 13:43:59 -08:00
2025-11-04 19:10:33 -08:00
2025-11-05 23:58:20 +01:00
2025-11-03 17:41:17 +01:00
2025-11-11 10:01:30 +01:00
2025-10-30 18:35:26 +01:00
2025-10-24 21:39:27 +02:00
2025-10-31 10:16:23 +01:00
2025-11-27 14:24:30 -08:00
2025-11-18 17:52:54 +01:00
2025-11-11 13:18:56 +01:00
2025-11-28 09:21:18 -07:00
2025-11-27 14:22:31 +01:00
2025-11-20 17:57:40 -08:00
2025-11-03 17:41:18 +01:00
2025-11-03 19:27:41 -08:00
2025-11-25 10:07:42 +01:00
2025-11-03 17:41:18 +01:00
2025-10-01 07:24:55 -04:00
2025-11-24 15:08:54 -08:00
2025-11-12 09:38:34 +01:00