From: Hitomi Hasegawa <hasegawa-hitomi@fujitsu.com> To: linux-arm-kernel@lists.infradead.org, soc@kernel.org Cc: arnd@arndb.de, olof@lixom.net, catalin.marinas@arm.com, will@kernel.org, sumit.garg@linaro.org, gregkh@linuxfoundation.org, jirislaby@kernel.org, daniel.thompson@linaro.org, dianders@chromium.org, hasegawa-hitomi@fujitsu.com Subject: [PATCH v5 0/1] soc: fujitsu: Add A64FX diagnostic interrupt driver Date: Fri, 20 May 2022 16:41:18 +0900 [thread overview] Message-ID: <20220520074119.3574753-1-hasegawa-hitomi@fujitsu.com> (raw) The interrupt is set using pseudo-NMI if it is available. Arm has a diagnostic interrupt feature called "Arm Generic Diagnostic Dump and Reset device", but the A64FX does not support this feature and instead has its own device definition. I tested on FX700: $ echo HARDLOCKUP > /sys/kernel/debug/provoke-crash/DIRECT [ 86.259226] lkdtm: Performing direct entry HARDLOCKUP : : Send the "chassis power diag" command from the management server using ipmitool, the following message is shown: [ 138.433544] Kernel panic - not syncing: a64fx_diag: interrupt received : : Changes in V5: - Fixing issues raised by Jiri and Greg. Changes in V4: - Call the panic function instead of sysrq. Prepare a handler for each NMI/IRQ and call nmi_panic()/panic() respectively (as in v1). - Fixing other issues raised by Greg. Changes in V3: - Exclude Sumit's patch. - Retest in v5.17. Changes in V2: - Include Sumit's patch. - The handler calls handle_sysrq() to use the sysrq feature to cause a panic. - request_nmi() and request_irq() now use the same handler, and the function name of the handler has also changed. - Use readl()/writel() instead of readl_relaxed()/writel_relaxed(). V4: https://lore.kernel.org/linux-arm-kernel/20220511062113.2645747-1-hasegawa-hitomi@fujitsu.com/ V3: https://lore.kernel.org/linux-arm-kernel/20220331092235.3000787-1-hasegawa-hitomi@fujitsu.com/ V2: https://lore.kernel.org/linux-arm-kernel/20220304064324.331217-3-hasegawa-hitomi@fujitsu.com/ V1: https://lore.kernel.org/linux-arm-kernel/20220218092010.1327309-1-hasegawa-hitomi@fujitsu.com/ Hitomi Hasegawa (1): soc: fujitsu: Add A64FX diagnostic interrupt driver MAINTAINERS | 5 + drivers/soc/Kconfig | 1 + drivers/soc/Makefile | 1 + drivers/soc/fujitsu/Kconfig | 16 ++++ drivers/soc/fujitsu/Makefile | 3 + drivers/soc/fujitsu/a64fx-diag.c | 154 +++++++++++++++++++++++++++++++ 6 files changed, 180 insertions(+) create mode 100644 drivers/soc/fujitsu/Kconfig create mode 100644 drivers/soc/fujitsu/Makefile create mode 100644 drivers/soc/fujitsu/a64fx-diag.c -- 2.27.0
WARNING: multiple messages have this Message-ID (diff)
From: Hitomi Hasegawa <hasegawa-hitomi@fujitsu.com> To: linux-arm-kernel@lists.infradead.org, soc@kernel.org Cc: arnd@arndb.de, olof@lixom.net, catalin.marinas@arm.com, will@kernel.org, sumit.garg@linaro.org, gregkh@linuxfoundation.org, jirislaby@kernel.org, daniel.thompson@linaro.org, dianders@chromium.org, hasegawa-hitomi@fujitsu.com Subject: [PATCH v5 0/1] soc: fujitsu: Add A64FX diagnostic interrupt driver Date: Fri, 20 May 2022 16:41:18 +0900 [thread overview] Message-ID: <20220520074119.3574753-1-hasegawa-hitomi@fujitsu.com> (raw) The interrupt is set using pseudo-NMI if it is available. Arm has a diagnostic interrupt feature called "Arm Generic Diagnostic Dump and Reset device", but the A64FX does not support this feature and instead has its own device definition. I tested on FX700: $ echo HARDLOCKUP > /sys/kernel/debug/provoke-crash/DIRECT [ 86.259226] lkdtm: Performing direct entry HARDLOCKUP : : Send the "chassis power diag" command from the management server using ipmitool, the following message is shown: [ 138.433544] Kernel panic - not syncing: a64fx_diag: interrupt received : : Changes in V5: - Fixing issues raised by Jiri and Greg. Changes in V4: - Call the panic function instead of sysrq. Prepare a handler for each NMI/IRQ and call nmi_panic()/panic() respectively (as in v1). - Fixing other issues raised by Greg. Changes in V3: - Exclude Sumit's patch. - Retest in v5.17. Changes in V2: - Include Sumit's patch. - The handler calls handle_sysrq() to use the sysrq feature to cause a panic. - request_nmi() and request_irq() now use the same handler, and the function name of the handler has also changed. - Use readl()/writel() instead of readl_relaxed()/writel_relaxed(). V4: https://lore.kernel.org/linux-arm-kernel/20220511062113.2645747-1-hasegawa-hitomi@fujitsu.com/ V3: https://lore.kernel.org/linux-arm-kernel/20220331092235.3000787-1-hasegawa-hitomi@fujitsu.com/ V2: https://lore.kernel.org/linux-arm-kernel/20220304064324.331217-3-hasegawa-hitomi@fujitsu.com/ V1: https://lore.kernel.org/linux-arm-kernel/20220218092010.1327309-1-hasegawa-hitomi@fujitsu.com/ Hitomi Hasegawa (1): soc: fujitsu: Add A64FX diagnostic interrupt driver MAINTAINERS | 5 + drivers/soc/Kconfig | 1 + drivers/soc/Makefile | 1 + drivers/soc/fujitsu/Kconfig | 16 ++++ drivers/soc/fujitsu/Makefile | 3 + drivers/soc/fujitsu/a64fx-diag.c | 154 +++++++++++++++++++++++++++++++ 6 files changed, 180 insertions(+) create mode 100644 drivers/soc/fujitsu/Kconfig create mode 100644 drivers/soc/fujitsu/Makefile create mode 100644 drivers/soc/fujitsu/a64fx-diag.c -- 2.27.0 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next reply other threads:[~2022-05-20 7:42 UTC|newest] Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top 2022-05-20 7:41 Hitomi Hasegawa [this message] 2022-05-20 7:41 ` [PATCH v5 0/1] soc: fujitsu: Add A64FX diagnostic interrupt driver Hitomi Hasegawa 2022-05-20 7:41 ` [PATCH v5 1/1] " Hitomi Hasegawa 2022-05-20 7:41 ` Hitomi Hasegawa 2022-06-09 7:48 ` [PATCH v5 0/1] " hasegawa-hitomi 2022-06-09 7:48 ` hasegawa-hitomi 2022-06-16 9:02 ` hasegawa-hitomi 2022-06-16 9:02 ` hasegawa-hitomi 2022-07-18 11:39 ` Arnd Bergmann 2022-07-18 11:39 ` Arnd Bergmann 2022-07-19 14:10 ` patchwork-bot+linux-soc
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20220520074119.3574753-1-hasegawa-hitomi@fujitsu.com \ --to=hasegawa-hitomi@fujitsu.com \ --cc=arnd@arndb.de \ --cc=catalin.marinas@arm.com \ --cc=daniel.thompson@linaro.org \ --cc=dianders@chromium.org \ --cc=gregkh@linuxfoundation.org \ --cc=jirislaby@kernel.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=olof@lixom.net \ --cc=soc@kernel.org \ --cc=sumit.garg@linaro.org \ --cc=will@kernel.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.