[PATCH 4/5] arm_mpam: prevent MPAM-Fb accesses inside IRQ handler

Niyas Sait niyas.sait at arm.com
Mon May 18 03:57:08 PDT 2026


Hi Andre,

On Wed, Apr 29, 2026 at 04:13:38PM +0200, Andre Przywara wrote:

> This error report relies on reading the MSC's error status register
> (ESR) in the IRQ handler, which is not possible for MPAM-Fb based
> MSC accesses, since they involve mailbox routines that might sleep.

I think there are a few other places where we may still end up invoking
the MPAM-Fb path from atomic/IRQ context.

For example, _msmon_read() uses smp_call_function_any(), which runs
__ris_msmon_read() in callback/atomic context

static int _msmon_read(struct mpam_component *comp, struct mon_read *arg)
{
    ...
    err = smp_call_function_any(&msc->accessibility,
                    __ris_msmon_read, arg,
                    true);
    ...
}

For MPAM-Fb, I think we could potentially avoid the smp_call_function_any() path entirely
and invoke directly from the current CPU. Since PCC accesses are effectively CPU agnostic, 
I think that should be fine for the MPAM-Fb case.

Thanks,
Niyas



More information about the linux-arm-kernel mailing list