Re: [patch 07/14] tasklets: Prevent tasklet_unlock_spin_wait() deadlock on RT

2021-03-10 Thread Thomas Gleixner
On Tue, Mar 09 2021 at 16:21, Sebastian Andrzej Siewior wrote: > On 2021-03-09 16:00:37 [+0100], To Thomas Gleixner wrote: >> diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h >> index 07c7329d21aa7..1c14ccd351091 100644 >> --- a/include/linux/interrupt.h >> +++

Re: [patch 07/14] tasklets: Prevent tasklet_unlock_spin_wait() deadlock on RT

2021-03-09 Thread Sebastian Andrzej Siewior
On 2021-03-09 16:00:37 [+0100], To Thomas Gleixner wrote: > diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h > index 07c7329d21aa7..1c14ccd351091 100644 > --- a/include/linux/interrupt.h > +++ b/include/linux/interrupt.h > @@ -663,15 +663,6 @@ static inline int

Re: [patch 07/14] tasklets: Prevent tasklet_unlock_spin_wait() deadlock on RT

2021-03-09 Thread Sebastian Andrzej Siewior
On 2021-03-09 09:42:10 [+0100], Thomas Gleixner wrote: > tasklet_unlock_spin_wait() spin waits for the TASKLET_STATE_SCHED bit in > the tasklet state to be cleared. This works on !RT nicely because the … Could you please fold this: diff --git a/include/linux/interrupt.h

[patch 07/14] tasklets: Prevent tasklet_unlock_spin_wait() deadlock on RT

2021-03-09 Thread Thomas Gleixner
tasklet_unlock_spin_wait() spin waits for the TASKLET_STATE_SCHED bit in the tasklet state to be cleared. This works on !RT nicely because the corresponding execution can only happen on a different CPU. On RT softirq processing is preemptible, therefore a task preempting the softirq processing