ACPI: APEI: EINJ: Relax platform response timeout to 1 second
authorShuai Xue <xueshuai@linux.alibaba.com>
Tue, 26 Oct 2021 07:28:29 +0000 (15:28 +0800)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Wed, 27 Oct 2021 18:33:26 +0000 (20:33 +0200)
commitbf7fc0c369585e34652d5666ed590d5cac07c2e2
tree6f41ca8cd2692d6e99e7c62f7219533868771642
parent3906fe9bb7f1a2c8667ae54e967dc8690824f4ea
ACPI: APEI: EINJ: Relax platform response timeout to 1 second

When injecting an error into the platform, the OSPM executes an
EXECUTE_OPERATION action to instruct the platform to begin the injection
operation. And then, the OSPM busy waits for a while by continually
executing CHECK_BUSY_STATUS action until the platform indicates that the
operation is complete. More specifically, the platform is limited to
respond within 1 millisecond right now. This is too strict for some
platforms.

For example, in Arm platform, when injecting a Processor Correctable error,
the OSPM will warn:
    Firmware does not respond in time.

And a message is printed on the console:
    echo: write error: Input/output error

We observe that the waiting time for DDR error injection is about 10 ms and
that for PCIe error injection is about 500 ms in Arm platform.

In this patch, we relax the response timeout to 1 second.

Signed-off-by: Shuai Xue <xueshuai@linux.alibaba.com>
Reviewed-by: Tony Luck <tony.luck@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/acpi/apei/einj.c