This repository has been archived by the owner on Jul 16, 2024. It is now read-only.
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
BACKPORT: ACPI / APEI: Don't wait to serialise with oops messages whe…
…n panic()ing oops_begin() exists to group printk() messages with the oops message printed by die(). To reach this caller we know that platform firmware took this error first, then notified the OS via NMI with a 'panic' severity. Don't wait for another CPU to release the die-lock before panic()ing, our only goal is to print this fatal error and panic(). This code is always called in_nmi(), and since commit 42a0bb3f7138 ("printk/nmi: generic solution for safe printk in NMI"), it has been safe to call printk() from this context. Messages are batched in a per-cpu buffer and printed via irq-work, or a call back from panic(). This patch is needed because Quicksilver firmware-first error handling uses the SDEI notification type for communication between trusted firmware and the OS. This adds needed NMI and SDEI functionality so that the SDEI path in the kernel through APEI acts as an NMI and is properly wired up to the APEI interfaces. Backported from: torvalds/linux@78b0b69 Link: https://patchwork.kernel.org/patch/10313555/ Acked-by: Borislav Petkov <[email protected]> Signed-off-by: James Morse <[email protected]> Signed-off-by: Tyler Baicar <[email protected]>
- Loading branch information