driver core: bus: use list_for_each_entry*
authorGeliang Tang <geliangtang@163.com>
Tue, 5 Jan 2016 15:03:37 +0000 (23:03 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 10 Feb 2016 01:25:27 +0000 (17:25 -0800)
Use list_for_each_entry*() instead of list_for_each*() to simplify
the code.

Signed-off-by: Geliang Tang <geliangtang@163.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/base/bus.c

index 5005924..4bee6b0 100644 (file)
@@ -1019,13 +1019,11 @@ static void device_insertion_sort_klist(struct device *a, struct list_head *list
                                        int (*compare)(const struct device *a,
                                                        const struct device *b))
 {
-       struct list_head *pos;
        struct klist_node *n;
        struct device_private *dev_prv;
        struct device *b;
 
-       list_for_each(pos, list) {
-               n = container_of(pos, struct klist_node, n_node);
+       list_for_each_entry(n, list, n_node) {
                dev_prv = to_device_private_bus(n);
                b = dev_prv->device;
                if (compare(a, b) <= 0) {
@@ -1042,8 +1040,7 @@ void bus_sort_breadthfirst(struct bus_type *bus,
                                          const struct device *b))
 {
        LIST_HEAD(sorted_devices);
-       struct list_head *pos, *tmp;
-       struct klist_node *n;
+       struct klist_node *n, *tmp;
        struct device_private *dev_prv;
        struct device *dev;
        struct klist *device_klist;
@@ -1051,8 +1048,7 @@ void bus_sort_breadthfirst(struct bus_type *bus,
        device_klist = bus_get_device_klist(bus);
 
        spin_lock(&device_klist->k_lock);
-       list_for_each_safe(pos, tmp, &device_klist->k_list) {
-               n = container_of(pos, struct klist_node, n_node);
+       list_for_each_entry_safe(n, tmp, &device_klist->k_list, n_node) {
                dev_prv = to_device_private_bus(n);
                dev = dev_prv->device;
                device_insertion_sort_klist(dev, &sorted_devices, compare);