linux/drivers/acpi/apei
Dan Williams 162457f585 ACPI: APEI: EINJ: Do not fail einj_init() on faux_device_create() failure
CXL has a symbol dependency on einj_core.ko, so if einj_init() fails then
cxl_core.ko fails to load. Prior to the faux_device_create() conversion,
einj_probe() failures were tracked by the einj_initialized flag without
failing einj_init().

Revert to that behavior and always succeed einj_init() given there is no
way, and no pressing need, to discern faux device-create vs device-probe
failures.

This situation arose because CXL knows proper kernel named objects to
trigger errors against, but acpi-einj knows how to perform the error
injection. The injection mechanism is shared with non-CXL use cases. The
result is CXL now has a module dependency on einj-core.ko, and init/probe
failures are handled at runtime.

Fixes: 6cb9441bfe ("ACPI: APEI: EINJ: Transition to the faux device interface")
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Reviewed-by: Ben Cheatham <benjamin.cheatham@amd.com>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Link: https://patch.msgid.link/20250607033228.1475625-4-dan.j.williams@intel.com
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2025-06-10 19:23:25 +02:00
..
Kconfig firmware: SDEI: Allow sdei initialization without ACPI_APEI_GHES 2025-05-08 13:35:22 +01:00
Makefile
apei-base.c move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
apei-internal.h
bert.c
einj-core.c ACPI: APEI: EINJ: Do not fail einj_init() on faux_device_create() failure 2025-06-10 19:23:25 +02:00
einj-cxl.c module: Convert symbol namespace to string literal 2024-12-02 11:34:44 -08:00
erst-dbg.c [tree-wide] finally take no_llseek out 2024-09-27 08:18:43 -07:00
erst.c
ghes.c treewide, timers: Rename from_timer() to timer_container_of() 2025-06-08 09:07:37 +02:00
hest.c