Re: [patch 20/23] ACPI: dock: avoid check _STA method
From: Holger Macht
Date: Tue Nov 11 2008 - 07:16:48 EST
On Fri 07. Nov - 15:16:06, Greg KH wrote:
> 2.6.26-stable review patch. If anyone has any objections, please let us know.
Objecting. This will only work in conjunction with
commit 39a0ad871000d2a016a4fa113a6e53d22aabf25d
Author: Zhao Yakui <yakui.zhao@xxxxxxxxx>
Date: Mon Aug 11 13:40:22 2008 +0800
ACPI : Load device driver according to the status of acpi device
Otherwise a device struct already exists although the device is not
present.
Regards,
Holger
>
> ------------------
>
> From: Shaohua Li <shaohua.li@xxxxxxxxx>
>
> commit 8b59560a3baf2e7c24e0fb92ea5d09eca92805db upstream.
>
> ACPI: dock: avoid check _STA method
>
> In some BIOSes, every _STA method call will send a notification again,
> this cause freeze. And in some BIOSes, it appears _STA should be called
> after _DCK. This tries to avoid calls _STA, and still keep the device
> present check.
>
> http://bugzilla.kernel.org/show_bug.cgi?id=10431
>
> Signed-off-by: Shaohua Li <shaohua.li@xxxxxxxxx>
> Signed-off-by: Len Brown <len.brown@xxxxxxxxx>
> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxx>
>
> ---
> drivers/acpi/dock.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> --- a/drivers/acpi/dock.c
> +++ b/drivers/acpi/dock.c
> @@ -599,14 +599,17 @@ static int handle_eject_request(struct d
> static void dock_notify(acpi_handle handle, u32 event, void *data)
> {
> struct dock_station *ds = data;
> + struct acpi_device *tmp;
>
> switch (event) {
> case ACPI_NOTIFY_BUS_CHECK:
> - if (!dock_in_progress(ds) && dock_present(ds)) {
> + if (!dock_in_progress(ds) && acpi_bus_get_device(ds->handle,
> + &tmp)) {
> begin_dock(ds);
> dock(ds);
> if (!dock_present(ds)) {
> printk(KERN_ERR PREFIX "Unable to dock!\n");
> + complete_dock(ds);
> break;
> }
> atomic_notifier_call_chain(&dock_notifier_list,
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/