Messages in this thread | | | Date | Thu, 5 Oct 2023 11:27:26 +0100 | From | Mark Rutland <> | Subject | Re: [PATCH 1/2] arm64: smp: Fix pseudo NMI issues w/ broken Mediatek FW |
| |
On Wed, Oct 04, 2023 at 07:04:12AM -0700, Doug Anderson wrote: > On Wed, Oct 4, 2023 at 3:15 AM Marc Zyngier <maz@kernel.org> wrote: > > > > On Wed, 04 Oct 2023 10:59:50 +0100, > > Mark Rutland <mark.rutland@arm.com> wrote: > > > > > > Given you haven't seen any issues, I suspect those are getting reset to fixed > > > values that happens to work out for us, but it is a bit worrisome more > > > generally (e.g. the LPI case above). > > > > It is likely that these SoCs don't even have an ITS. > > Right. That was what we decided [1] when Marc pointed this out earlier. > > Overall: we know that this firmware behavior is not good but we're > stuck with it. :( At the very least, any new devices coming out will > have this fixed. Presumably if old devices are working OK enough today > (as long as you don't enable pseudo-NMI) then they can be made to keep > working? > > So circling back: what patch should we actually land?
For now I'd prefer we took the patch I sent in:
https://lore.kernel.org/linux-arm-kernel/ZRr8r7XMoyDKaitd@FVFF77S0Q05N.cambridge.arm.com/
... as that leaves us no worse than before this series, and it's pretty simple.
> As of right now only pseudo-NMI is broken, but it would be good to make sure > that if the kernel later adds other features that would be broken on this > hardware that it gets handled properly...
Going further than the above, I think there are three options here:
1) Complete fix: depend on a working firmware, and throw this workaround away.
IIUC from the above, that's not something you can commit to.
2) Partial fix: have the kernel save/restore everything.
IIUC this is unpalatable.
3) Partial fix: make the ARM64_HAS_GIC_PRIO_MASKING cpucap depend on the absence of a "mediatek,broken-save-restore-fw" property in the DT. I believe we can check that in early_enable_pseudo_nmi() or can_use_gic_priorities().
That'll avoid potential issues if/when we change the priorities used for pNMI (which is something I've been looking at).
I'm happy with (3) if Marc is.
Mark.
| |