summaryrefslogtreecommitdiffstats
path: root/arch/ia64
diff options
context:
space:
mode:
authorPatrick Mochel <mochel@digitalimplant.org>2005-04-28 17:11:52 -0700
committerGreg Kroah-Hartman <gregkh@suse.de>2005-06-20 15:15:28 -0700
commit6623415687eaffef49429292ab062bb046ee3311 (patch)
treef969c9683cf152a2709ca00b558b2cc65b36f7dc /arch/ia64
parent273971bade8a6d37c1b162146de1a53965cdc245 (diff)
downloadlinux-6623415687eaffef49429292ab062bb046ee3311.tar.gz
linux-6623415687eaffef49429292ab062bb046ee3311.tar.bz2
linux-6623415687eaffef49429292ab062bb046ee3311.zip
[PATCH] sn: fixes due to driver core changes
Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'arch/ia64')
-rw-r--r--arch/ia64/sn/kernel/tiocx.c21
1 files changed, 9 insertions, 12 deletions
diff --git a/arch/ia64/sn/kernel/tiocx.c b/arch/ia64/sn/kernel/tiocx.c
index ab9b5f35c2a7..b6bcfe0b0f09 100644
--- a/arch/ia64/sn/kernel/tiocx.c
+++ b/arch/ia64/sn/kernel/tiocx.c
@@ -518,25 +518,22 @@ static int __init tiocx_init(void)
return 0;
}
-static void __exit tiocx_exit(void)
+static int cx_remove_device(struct device * dev, void * data)
{
- struct device *dev;
- struct device *tdev;
+ struct cx_dev *cx_dev = to_cx_dev(dev);
+ device_remove_file(dev, &dev_attr_cxdev_control);
+ cx_device_unregister(cx_dev);
+ return 0;
+}
+static void __exit tiocx_exit(void)
+{
DBG("tiocx_exit\n");
/*
* Unregister devices.
*/
- list_for_each_entry_safe(dev, tdev, &tiocx_bus_type.devices.list,
- bus_list) {
- if (dev) {
- struct cx_dev *cx_dev = to_cx_dev(dev);
- device_remove_file(dev, &dev_attr_cxdev_control);
- cx_device_unregister(cx_dev);
- }
- }
-
+ bus_for_each_dev(&tiocx_bus_type, NULL, NULL, cx_remove_device);
bus_unregister(&tiocx_bus_type);
}