diff options
author | gregkh@suse.de <gregkh@suse.de> | 2005-03-25 11:45:31 -0800 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2005-06-20 15:15:26 -0700 |
commit | 64360322ab3330d4881166380ad43a1eec2f123d (patch) | |
tree | cfb876990acbe4669e9ba45d6252c75538288f24 /drivers/ieee1394 | |
parent | ff710710eae73990dd484ea8e37dba636452502b (diff) | |
download | kernel_samsung_smdk4412-64360322ab3330d4881166380ad43a1eec2f123d.zip kernel_samsung_smdk4412-64360322ab3330d4881166380ad43a1eec2f123d.tar.gz kernel_samsung_smdk4412-64360322ab3330d4881166380ad43a1eec2f123d.tar.bz2 |
[PATCH] Use device_for_each_child() to unregister devices in nodemgr_remove_host_dev()
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
diff -Nru a/drivers/ieee1394/nodemgr.c b/drivers/ieee1394/nodemgr.c
Diffstat (limited to 'drivers/ieee1394')
-rw-r--r-- | drivers/ieee1394/nodemgr.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/drivers/ieee1394/nodemgr.c b/drivers/ieee1394/nodemgr.c index 83e66ed..a155b39 100644 --- a/drivers/ieee1394/nodemgr.c +++ b/drivers/ieee1394/nodemgr.c @@ -695,14 +695,15 @@ static void nodemgr_remove_ne(struct node_entry *ne) put_device(dev); } +static int __nodemgr_remove_host_dev(struct device *dev, void *data) +{ + nodemgr_remove_ne(container_of(dev, struct node_entry, device)); + return 0; +} static void nodemgr_remove_host_dev(struct device *dev) { - struct device *ne_dev, *next; - - list_for_each_entry_safe(ne_dev, next, &dev->children, node) - nodemgr_remove_ne(container_of(ne_dev, struct node_entry, device)); - + device_for_each_child(dev, NULL, __nodemgr_remove_host_dev); sysfs_remove_link(&dev->kobj, "irm_id"); sysfs_remove_link(&dev->kobj, "busmgr_id"); sysfs_remove_link(&dev->kobj, "host_id"); |