Messages in this thread | | | From | "Luck, Tony" <> | Subject | RE: [PATCH v2] ACPI: APEI: EINJ: EINJV2 support added | Date | Thu, 4 May 2023 21:00:51 +0000 |
| |
> +An error injection example:: > + > + # cd /sys/kernel/debug/apei/einj > + # cat available_error_type # See which errors can be injected > + 0x00000001 EINJV2 Processor Error > + 0x00000002 EINJV2 Memory Error > + 0x00000004 EINJV2 PCI Express Error > + # echo 0x2 > error_type > + # echo 0x5 > flags > + # echo 0x12345000 > param1 > + # echo 0x2 > param5 > + # echo 1 > error_inject > > Is the expectation that platforms that implement EINJV2 will not include legacy > EINJ support?
I spoke to some BIOS folks here. They said that the ACPI 6.5 change is an extension to the action table with new opcodes for GET/SET when EINJV2 is supported. The legacy actions are not deprecated. So platform firmware could support both old and new injection formats.
So I'm going to double down on this:
> Maybe it would be better to change the top-level directory to: > > /sys/kernel/debug/apei/einjv2
and say this isn't a "maybe". The EINJV2 interface files should go in a new directory. The old files should continue to work (assuming firmware still enumerates the old available types).
Simplifying the interface for EINJV2 in the new directory is an option. I think we should take it ... the "paramN" files that mean different things for different injection types were an evolution rather than a design.
-Tony
| |