[PATCH] Add a klist to struct bus_type for its devices.
- Use it for bus_for_each_dev().
- Use the klist spinlock instead of the bus rwsem.
Signed-off-by: Patrick Mochel <mochel@digitalimplant.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
diff --git a/include/linux/device.h b/include/linux/device.h
index 10f5aa20..e36953c 100644
--- a/include/linux/device.h
+++ b/include/linux/device.h
@@ -14,6 +14,7 @@
#include <linux/config.h>
#include <linux/ioport.h>
#include <linux/kobject.h>
+#include <linux/klist.h>
#include <linux/list.h>
#include <linux/types.h>
#include <linux/module.h>
@@ -51,6 +52,7 @@
struct subsystem subsys;
struct kset drivers;
struct kset devices;
+ struct klist klist_devices;
struct bus_attribute * bus_attrs;
struct device_attribute * dev_attrs;
@@ -262,6 +264,7 @@
struct list_head bus_list; /* node in bus's list */
struct list_head driver_list;
struct list_head children;
+ struct klist_node knode_bus;
struct device * parent;
struct kobject kobj;