On Wed, Jun 03, 2026 at 03:05:11PM +0200, Sebastian Andrzej Siewior wrote:
>The primary interrupt handler (imx_mu_isr()) no longer invokes any
>callbacks it only masks the interrupt source and returns. In a
>forced-threaded environment the IRQ-core will force-thread the primary
>handler which can be avoided.
>
>The primary handler uses a spinlock_t to protect the RMW operation in
>imx_mu_xcr_rmw() - nothing that may introduce long latencies.
>
>The lock can be turned into a raw_spinlock_t and then the primary
>handler can run in hardirq context even on PREEMPT_RT skipping one
>thread.
>
>Make struct imx_mu_priv::xcr_lock a raw_spinlock_t and skip
>force-threading the primrary handler by marking it IRQF_NO_THREAD.
>
>Signed-off-by: Sebastian Andrzej Siewior <[email protected]>

Reviewed-by: Peng Fan <[email protected]>

Reply via email to