X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=drivers%2Fbase%2Fpower%2Fshutdown.c;h=56e8eaaac012cd544f69df0823aef84b023cfaaf;hb=4800be295c34268fd3211d49828bfaa6bf62867f;hp=3483ae4d57f59a09025d8d0c49d2100ea72c81ee;hpb=b197ba3c70638a3a2ae39296781912f26ac0f991;p=linux-2.6 diff --git a/drivers/base/power/shutdown.c b/drivers/base/power/shutdown.c index 3483ae4d57..56e8eaaac0 100644 --- a/drivers/base/power/shutdown.c +++ b/drivers/base/power/shutdown.c @@ -16,8 +16,6 @@ #define to_dev(node) container_of(node, struct device, kobj.entry) -extern struct subsystem devices_subsys; - /** * We handle system devices differently - we suspend and shut them @@ -36,8 +34,7 @@ void device_shutdown(void) { struct device * dev, *devn; - down_write(&devices_subsys.rwsem); - list_for_each_entry_safe_reverse(dev, devn, &devices_subsys.kset.list, + list_for_each_entry_safe_reverse(dev, devn, &devices_subsys.list, kobj.entry) { if (dev->bus && dev->bus->shutdown) { dev_dbg(dev, "shutdown\n"); @@ -47,8 +44,5 @@ void device_shutdown(void) dev->driver->shutdown(dev); } } - up_write(&devices_subsys.rwsem); - - sysdev_shutdown(); }