From: Holger Macht Date: Wed, 12 Mar 2008 00:07:27 +0000 (+0100) Subject: ACPI: Set flag DOCK_UNDOCKING when triggered via sysfs X-Git-Tag: v2.6.25-rc7~107^2^2 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9171f83488940e4ff85f1b7137773eb1f306cdef;p=linux-2.6 ACPI: Set flag DOCK_UNDOCKING when triggered via sysfs begin_undock() is only called when triggered via a acpi notify handler (pressing the undock button on the dock station), but complete_undock() is always called after the eject. So if a undock is triggered through a sysfs write, the flag DOCK_UNDOCKING has to be set for the dock station, too. Otherwise this will freeze the system hard. Signed-off-by: Holger Macht Acked-by: Kristen Carlson Accardi Signed-off-by: Andrew Morton Signed-off-by: Len Brown --- diff --git a/drivers/acpi/dock.c b/drivers/acpi/dock.c index 307cef65c2..fa44fb96fc 100644 --- a/drivers/acpi/dock.c +++ b/drivers/acpi/dock.c @@ -710,6 +710,7 @@ static ssize_t write_undock(struct device *dev, struct device_attribute *attr, if (!count) return -EINVAL; + begin_undock(dock_station); ret = handle_eject_request(dock_station, ACPI_NOTIFY_EJECT_REQUEST); return ret ? ret: count; }