Skip to content

Commit c5fee33

Browse files
paulmckrcuFrederic Weisbecker
authored andcommitted
srcu: Make grace-period determination use ssp->srcu_reader_flavor
This commit causes the srcu_readers_unlock_idx() function to take the srcu_struct structure's ->srcu_reader_flavor field into account. This ensures that structures defined via DEFINE_SRCU_FAST( or initialized via init_srcu_struct_fast() have their grace periods use synchronize_srcu() or synchronize_srcu_expedited() instead of smp_mb(), even before the first SRCU reader has been entered. Signed-off-by: Paul E. McKenney <paulmck@kernel.org> Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com> Cc: Steven Rostedt <rostedt@goodmis.org> Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Cc: <bpf@vger.kernel.org> Signed-off-by: Frederic Weisbecker <frederic@kernel.org>
1 parent ee90848 commit c5fee33

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

kernel/rcu/srcutree.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -490,7 +490,7 @@ static bool srcu_readers_lock_idx(struct srcu_struct *ssp, int idx, bool gp, uns
490490
static unsigned long srcu_readers_unlock_idx(struct srcu_struct *ssp, int idx, unsigned long *rdm)
491491
{
492492
int cpu;
493-
unsigned long mask = 0;
493+
unsigned long mask = ssp->srcu_reader_flavor;
494494
unsigned long sum = 0;
495495

496496
for_each_possible_cpu(cpu) {

0 commit comments

Comments
 (0)