Re: [PATCH PREEMPT_RT] i915: fix PREEMPT_RT locking splats

From: Sebastian Andrzej Siewior
Date: Wed Sep 08 2021 - 15:05:20 EST


On 2021-08-23 15:00:15 [-0500], Clark Williams wrote:
> Found two separate spots where i915 was throwing "sleeping
> function called from invalid context" when running on a
> PREEMPT_RT kernel. In both cases it was from calling
> local_irq_disable prior to taking a spin_lock. Since spin
> locks are converted to rt_mutex_t on PREEMPT_RT this means
> that we might sleep with interrupts disabled.
>
> Since in both cases the calls were in threaded context on RT
> (irq or ksoftirqd) and in no danger of reentrance, change the
> code to only disable interrupts on non-PREEMPT_RT kernels.
>
> Signed-off-by: Clark Williams <williams@xxxxxxxxxx>

I try to deal with this in
https://lkml.kernel.org/r/20210908185703.2989414-1-bigeasy@xxxxxxxxxxxxx

Sebastian