Re: [PATCH v2 4/5] ACPI: scan: Rework Device Check and Bus Check notification handling

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 26 Feb 2024 17:45:11 +0100
"Rafael J. Wysocki" <rjw@xxxxxxxxxxxxx> wrote:

> From: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
> 
> 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@xxxxxxxxx>
Looks good.
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>





[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]
  Powered by Linux