lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:   Thu, 24 Sep 2020 13:42:34 +0900
From:   Yuichi Ito <ito-yuichi@...itsu.com>
To:     maz@...nel.org, sumit.garg@...aro.org, tglx@...utronix.de,
        jason@...edaemon.net, catalin.marinas@....com, will@...nel.org
Cc:     linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
        Yuichi Ito <ito-yuichi@...itsu.com>
Subject: [PATCH 0/2] Enable support IPI_CPU_CRASH_STOP to be pseudo-NMI

Enable support IPI_CPU_CRASH_STOP to be pseudo-NMI

This patchset enables IPI_CPU_CRASH_STOP IPI to be pseudo-NMI.
This allows kdump to collect system information even when the CPU is in
a HARDLOCKUP state.

Only IPI_CPU_CRASH_STOP uses NMI and the other IPIs remain normal IRQs.

The patch has been tested on ThunderX.

This patch assumes Marc's latest IPIs patch-set. [1]
It also uses some of Sumit's IPI patch set for NMI.[2]

[1] https://lore.kernel.org/linux-arm-kernel/20200901144324.1071694-1-maz@kernel.org/
[2] https://lore.kernel.org/linux-arm-kernel/1599830924-13990-3-git-send-email-sumit.garg@linaro.org/

$ echo 1 > /proc/sys/kernel/panic_on_rcu_stal
$ echo HARDLOCKUP > /sys/kernel/debug/provoke-crash/DIRECT
   : kernel panics and crash kernel boot
   : makedumpfile saves the system state at HARDLOCKUP in vmcore.

crash utility:
crash> bt
  PID: 3213   TASK: fffffd001adc5940  CPU: 8   COMMAND: "bash"
  #0 [fffffe0022fefcf0] lkdtm_HARDLOCKUP at fffffe0010888ab4
  #1 [fffffe0022fefd10] lkdtm_do_action at fffffe00108882bc
  #2 [fffffe0022fefd20] direct_entry at fffffe0010888720
  #3 [fffffe0022fefd70] full_proxy_write at fffffe001058cfe4
  #4 [fffffe0022fefdb0] vfs_write at fffffe00104a4c2c
  #5 [fffffe0022fefdf0] ksys_write at fffffe00104a4f0c
  #6 [fffffe0022fefe40] __arm64_sys_write at fffffe00104a4fbc
  #7 [fffffe0022fefe50] el0_svc_common.constprop.0 at fffffe0010159e38
  #8 [fffffe0022fefe80] do_el0_svc at fffffe0010159fa0
  #9 [fffffe0022fefe90] el0_svc at fffffe00101481d0
  #10 [fffffe0022fefea0] el0_sync_handler at fffffe00101484b4
  #11 [fffffe0022fefff0] el0_sync at fffffe0010142b7c


Sumit Garg (1):
  irqchip/gic-v3: Enable support for SGIs to act as NMIs

Yuichi Ito (1):
  Register IPI_CPU_CRASH_STOP IPI as pseudo-NMI

 arch/arm64/kernel/smp.c      | 39 ++++++++++++++++++++++++++++--------
 drivers/irqchip/irq-gic-v3.c | 13 ++++++++++--
 2 files changed, 42 insertions(+), 10 deletions(-)

-- 
2.25.1

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ