Message ID | 20230824083012.v11.5.Ifadbfd45b22c52edcb499034dd4783d096343260@changeid (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | arm64: Add IPI for backtraces / kgdb; try to use NMI for some IPIs | expand |
> -----Original Message----- > There's no reason why IPI_CPU_STOP and IPI_CPU_CRASH_STOP can't be > handled as NMI. They are very simple and everything in them is > NMI-safe. Mark them as things to use NMI for if NMI is available. > > Suggested-by: Mark Rutland <mark.rutland@arm.com> > Reviewed-by: Stephen Boyd <swboyd@chromium.org> > Signed-off-by: Douglas Anderson <dianders@chromium.org> > --- > I don't actually have any good way to test/validate this patch. It's > added to the series at Mark's request. For IPI_CPU_CRASH_STOP, I briefly checked that HARDLOCKUP-ed CPU (by lkdtm) received the ipi upon crash dump request when pseudo NMI is enabled. Reviewed-by: Misono Tomohiro <misono.tomohiro@fujitsu.com> Regards, Tomohiro > > (no changes since v10) > > Changes in v10: > - ("IPI_CPU_STOP and IPI_CPU_CRASH_STOP should try for NMI") new for > v10. > > arch/arm64/kernel/smp.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/arch/arm64/kernel/smp.c b/arch/arm64/kernel/smp.c > index c8896cbc5327..4566934aaf9f 100644 > --- a/arch/arm64/kernel/smp.c > +++ b/arch/arm64/kernel/smp.c > @@ -946,6 +946,8 @@ static bool ipi_should_be_nmi(enum ipi_msg_type ipi) > return false; > > switch (ipi) { > + case IPI_CPU_STOP: > + case IPI_CPU_CRASH_STOP: > case IPI_CPU_BACKTRACE: > return true; > default: > -- > 2.42.0.rc1.204.g551eb34607-goog > > > _______________________________________________ > linux-arm-kernel mailing list > linux-arm-kernel@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
On Thu, 24 Aug 2023 at 21:03, Douglas Anderson <dianders@chromium.org> wrote: > > There's no reason why IPI_CPU_STOP and IPI_CPU_CRASH_STOP can't be > handled as NMI. They are very simple and everything in them is > NMI-safe. Mark them as things to use NMI for if NMI is available. > > Suggested-by: Mark Rutland <mark.rutland@arm.com> > Reviewed-by: Stephen Boyd <swboyd@chromium.org> > Signed-off-by: Douglas Anderson <dianders@chromium.org> Reviewed-by: Sumit Garg <sumit.garg@linaro.org> -Sumit > --- > I don't actually have any good way to test/validate this patch. It's > added to the series at Mark's request. > > (no changes since v10) > > Changes in v10: > - ("IPI_CPU_STOP and IPI_CPU_CRASH_STOP should try for NMI") new for v10. > > arch/arm64/kernel/smp.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/arch/arm64/kernel/smp.c b/arch/arm64/kernel/smp.c > index c8896cbc5327..4566934aaf9f 100644 > --- a/arch/arm64/kernel/smp.c > +++ b/arch/arm64/kernel/smp.c > @@ -946,6 +946,8 @@ static bool ipi_should_be_nmi(enum ipi_msg_type ipi) > return false; > > switch (ipi) { > + case IPI_CPU_STOP: > + case IPI_CPU_CRASH_STOP: > case IPI_CPU_BACKTRACE: > return true; > default: > -- > 2.42.0.rc1.204.g551eb34607-goog >
diff --git a/arch/arm64/kernel/smp.c b/arch/arm64/kernel/smp.c index c8896cbc5327..4566934aaf9f 100644 --- a/arch/arm64/kernel/smp.c +++ b/arch/arm64/kernel/smp.c @@ -946,6 +946,8 @@ static bool ipi_should_be_nmi(enum ipi_msg_type ipi) return false; switch (ipi) { + case IPI_CPU_STOP: + case IPI_CPU_CRASH_STOP: case IPI_CPU_BACKTRACE: return true; default: