[PATCH] arm64/irq: use NMI to send stop IPI

Pingfan Liu kernelfans at gmail.com
Tue Dec 15 00:40:42 EST 2020


On Mon, Dec 14, 2020 at 9:24 PM Marc Zyngier <maz at kernel.org> wrote:
>
> On 2020-12-14 13:04, Pingfan Liu wrote:
> > On Mon, Dec 14, 2020 at 5:46 PM Marc Zyngier <maz at kernel.org> wrote:
> >>
> >> On 2020-12-14 02:20, Pingfan Liu wrote:
> >>
> >> [...]
> >>
> >> > After serval days of chasing this issue, I have a raw idea about it.
> >> > What about re-structure the code like
> >> > DEFINE_IDTENTRY_SYSVEC_SIMPLE(sysvec_reschedule_ipi) ?
> >>
> >> I'm not sure how you want to mimic what x86 does, given that we have
> >> at least three different root interrupt controllers on arm64 (plus
> >> a fourth coming up), all of which have access methods that are not
> >> part of the CPU architecture, and that are shared with the 32bit
> >> part.
> >>
> > I just found that Mark had implemented enter_el1_irq_or_nmi() for
> > arm64, and think it is another way to handle the problem.
> >
> > I had thought if aligned to x86, then linux/kernel/entry/common.c can
> > be used. It may bring benefits, e.g. shift off the rcu/lockdep/dyntick
> > to core kernel.
>
> Using the entry/common.c stuff is indeed what we are planning to do,
> but the current arm64 code doesn't lend itself to that just yet,
>
> >
> > Anyway, I am a new beginner at this. If my opinion is not good enough,
> > please just ignore it.
> >> > I will send a series soon afterward.
> >>
> >> Please wait until the merge window is over.
> >>
> > Sorry that it has been sent out before your reply. If there is V2, I
> > will do it after the merge window.
>
> Please look at the series I pointed you too (and its follow-up), which
> has most of what you are trying to achieve already.
>
OK, and glad to know this issue is close to the end.

Thanks,
Pingfan



More information about the linux-arm-kernel mailing list