Thread (51 messages) 51 messages, 7 authors, 2022-02-04

Re: [PATCH] rcutorture: Avoid problematic critical section nesting on RT

From: Scott Wood <hidden>
Date: 2021-08-20 03:23:58
Also in: linux-arm-kernel, lkml, rcu

On Tue, 2021-08-17 at 16:40 +0200, Sebastian Andrzej Siewior wrote:
[bigeasy: remove 'preempt_disable(); local_bh_disable(); preempt_enable();
 local_bh_enable();' from the examples because this works on RT now. ]
Does it actually work?  If preemption is disabled during local_bh_disable,
softirq_ctrl.lock won't be taken.  If you then get preempted between the
preempt_enable() and the local_bh_enable(), and another task tries to do
local_bh_disable(), won't it successfully get softirq_ctrl.lock, add to
softirq_ctrl.cnt, and proceed right into the critical section?

Or am I missing something?

-Scott

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help