[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240227093948.000050c9@Huawei.com>
Date: Tue, 27 Feb 2024 09:39:48 +0000
From: Jonathan Cameron <Jonathan.Cameron@...wei.com>
To: "Rafael J. Wysocki" <rjw@...ysocki.net>
CC: Linux ACPI <linux-acpi@...r.kernel.org>, LKML
<linux-kernel@...r.kernel.org>, Mika Westerberg
<mika.westerberg@...ux.intel.com>, "Rafael J. Wysocki" <rafael@...nel.org>,
"Russell King (Oracle)" <linux@...linux.org.uk>
Subject: Re: [PATCH v2 4/5] ACPI: scan: Rework Device Check and Bus Check
notification handling
On Mon, 26 Feb 2024 17:45:11 +0100
"Rafael J. Wysocki" <rjw@...ysocki.net> wrote:
> From: Rafael J. Wysocki <rafael.j.wysocki@...el.com>
>
> The underlying problem is the handling of the enabled bit in device
> status (bit 1 of _STA return value) which is required by the ACPI
> specification to be observed in addition to the present bit (bit 0
> of _STA return value) [1], but Linux does not observe it.
>
> Since Linux has not looked at that bit for a long time, it is generally
> risky to start obseving it in all device enumeration cases, especially
> at the system initialization time, but it can be observed when the
> kernel receives a Bus Check or Device Check notification indicating a
> change in device configuration. In those cases, seeing the enabled bit
> clear may be regarded as an indication that the device at hand should
> not be used any more.
>
> For this reason, rework the handling of Device Check and Bus Check
> notifications in the ACPI core device enumeration code in the
> following way:
>
> 1. Rename acpi_bus_trim_one() to acpi_scan_check_and_detach() and make
> it check device status if its second argument is not NULL, in which
> case it will detach scan handlers or ACPI drivers from devices whose
> _STA returns the enabled bit clear.
New name is much better - thanks!
>
> 2. Make acpi_scan_device_check() and acpi_scan_bus_check() invoke
> acpi_scan_check_and_detach() with a non-NULL second argument
> unconditionally, so scan handlers and ACPI drivers are detached
> from the target device and its ancestors if their _STA returns the
> enabled bit clear.
>
> Link: https://uefi.org/specs/ACPI/6.5/06_Device_Configuration.html#sta-device-status # [1]
> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@...el.com>
Looks good.
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@...wei.com>
Powered by blists - more mailing lists