]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commit
ACPI / APEI: Don't wait to serialise with oops messages when panic()ing
authorJames Morse <james.morse@arm.com>
Tue, 29 Jan 2019 18:48:37 +0000 (18:48 +0000)
committerMarcelo Henrique Cerri <marcelo.cerri@canonical.com>
Fri, 17 Jan 2020 17:21:42 +0000 (14:21 -0300)
commit20fe00ad7d84f8785aefea2bd55a5f35553088d2
treeed66a7ee77e460d4558ec105d7268f027d052781
parentd33bf2f11c57fa9954600482bb36ea3298b1469d
ACPI / APEI: Don't wait to serialise with oops messages when panic()ing

BugLink: https://bugs.launchpad.net/bugs/1855787
[ Upstream commit 78b0b690f6558ed788dccafa45965325dd11ba89 ]

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().

Link: https://patchwork.kernel.org/patch/10313555/
Acked-by: Borislav Petkov <bp@suse.de>
Signed-off-by: James Morse <james.morse@arm.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Kleber Sacilotto de Souza <kleber.souza@canonical.com>
drivers/acpi/apei/ghes.c