]> git.hungrycats.org Git - linux/commitdiff
Driver Core: fix up list_for_each() calls to list_for_each_entry()
authorGreg Kroah-Hartman <greg@kroah.com>
Mon, 9 Feb 2004 06:01:07 +0000 (22:01 -0800)
committerGreg Kroah-Hartman <greg@kroah.com>
Mon, 9 Feb 2004 06:01:07 +0000 (22:01 -0800)
Now this should get that Rusty^Wmonkey off my back...

drivers/base/class.c
drivers/base/class_simple.c

index a4c2487abb4c64c68604099c0d3110300a855a58..d9dbf7eea4d016e8aa0c2b129abb802777eef9ef 100644 (file)
@@ -3,8 +3,8 @@
  *
  * Copyright (c) 2002-3 Patrick Mochel
  * Copyright (c) 2002-3 Open Source Development Labs
- * Copyright (c) 2003 Greg Kroah-Hartman
- * Copyright (c) 2003 IBM Corp.
+ * Copyright (c) 2003-2004 Greg Kroah-Hartman
+ * Copyright (c) 2003-2004 IBM Corp.
  * 
  * This file is released under the GPLv2
  *
@@ -278,7 +278,6 @@ int class_device_add(struct class_device *class_dev)
 {
        struct class * parent;
        struct class_interface * class_intf;
-       struct list_head * entry;
        int error;
 
        class_dev = class_device_get(class_dev);
@@ -302,11 +301,9 @@ int class_device_add(struct class_device *class_dev)
        if (parent) {
                down_write(&parent->subsys.rwsem);
                list_add_tail(&class_dev->node, &parent->children);
-               list_for_each(entry, &parent->interfaces) {
-                       class_intf = container_of(entry, struct class_interface, node);
+               list_for_each_entry(class_intf, &parent->interfaces, node)
                        if (class_intf->add)
                                class_intf->add(class_dev);
-               }
                up_write(&parent->subsys.rwsem);
        }
 
@@ -330,16 +327,13 @@ void class_device_del(struct class_device *class_dev)
 {
        struct class * parent = class_dev->class;
        struct class_interface * class_intf;
-       struct list_head * entry;
 
        if (parent) {
                down_write(&parent->subsys.rwsem);
                list_del_init(&class_dev->node);
-               list_for_each(entry, &parent->interfaces) {
-                       class_intf = container_of(entry, struct class_interface, node);
+               list_for_each_entry(class_intf, &parent->interfaces, node)
                        if (class_intf->remove)
                                class_intf->remove(class_dev);
-               }
                up_write(&parent->subsys.rwsem);
        }
 
@@ -395,7 +389,6 @@ int class_interface_register(struct class_interface *class_intf)
 {
        struct class * parent;
        struct class_device * class_dev;
-       struct list_head * entry;
 
        if (!class_intf || !class_intf->class)
                return -ENODEV;
@@ -408,10 +401,8 @@ int class_interface_register(struct class_interface *class_intf)
        list_add_tail(&class_intf->node, &parent->interfaces);
 
        if (class_intf->add) {
-               list_for_each(entry, &parent->children) {
-                       class_dev = container_of(entry, struct class_device, node);
+               list_for_each_entry(class_dev, &parent->children, node)
                        class_intf->add(class_dev);
-               }
        }
        up_write(&parent->subsys.rwsem);
 
@@ -421,7 +412,7 @@ int class_interface_register(struct class_interface *class_intf)
 void class_interface_unregister(struct class_interface *class_intf)
 {
        struct class * parent = class_intf->class;
-       struct list_head * entry;
+       struct class_device *class_dev;
 
        if (!parent)
                return;
@@ -430,10 +421,8 @@ void class_interface_unregister(struct class_interface *class_intf)
        list_del_init(&class_intf->node);
 
        if (class_intf->remove) {
-               list_for_each(entry, &parent->children) {
-                       struct class_device *class_dev = container_of(entry, struct class_device, node);
+               list_for_each_entry(class_dev, &parent->children, node)
                        class_intf->remove(class_dev);
-               }
        }
        up_write(&parent->subsys.rwsem);
 
index 53548e0ed544f8be0a6d9506d3c99ec08baaa277..3ea8ada88d14353d35e4e8fe3cafea7bc4dfebdf 100644 (file)
@@ -197,12 +197,10 @@ EXPORT_SYMBOL(class_simple_set_hotplug);
 void class_simple_device_remove(dev_t dev)
 {
        struct simple_dev *s_dev = NULL;
-       struct list_head *tmp;
        int found = 0;
 
        spin_lock(&simple_dev_list_lock);
-       list_for_each(tmp, &simple_dev_list) {
-               s_dev = list_entry(tmp, struct simple_dev, node);
+       list_for_each_entry(s_dev, &simple_dev_list, node) {
                if (s_dev->dev == dev) {
                        found = 1;
                        break;