summaryrefslogtreecommitdiff
path: root/drivers/base
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <greg@kroah.com>2004-02-03 21:48:53 -0800
committerGreg Kroah-Hartman <greg@kroah.com>2004-02-03 21:48:53 -0800
commit9d6cc8f23f0e0d00a29faabf059e12cdd2c1becb (patch)
tree35a99d7de988fb6683cd0fe59615d53edf62ae04 /drivers/base
parenta2db42827b775b1110b6cf29f530a8e0246ede19 (diff)
[PATCH] Driver core: remove device_unregister_wait() as it's a very bad idea.
Diffstat (limited to 'drivers/base')
-rw-r--r--drivers/base/core.c23
1 files changed, 0 insertions, 23 deletions
diff --git a/drivers/base/core.c b/drivers/base/core.c
index 84bc01e0ce59..6c84ff06026b 100644
--- a/drivers/base/core.c
+++ b/drivers/base/core.c
@@ -76,7 +76,6 @@ static struct sysfs_ops dev_sysfs_ops = {
static void device_release(struct kobject * kobj)
{
struct device * dev = to_dev(kobj);
- struct completion * c = dev->complete;
if (dev->release)
dev->release(dev);
@@ -86,8 +85,6 @@ static void device_release(struct kobject * kobj)
dev->bus_id);
WARN_ON(1);
}
- if (c)
- complete(c);
}
static struct kobj_type ktype_device = {
@@ -355,25 +352,6 @@ void device_unregister(struct device * dev)
/**
- * device_unregister_wait - Unregister device and wait for it to be freed.
- * @dev: Device to unregister.
- *
- * For the cases where the caller needs to wait for all references to
- * be dropped from the device before continuing (e.g. modules with
- * statically allocated devices), this function uses a completion struct
- * to wait, along with a matching complete() in device_release() above.
- */
-
-void device_unregister_wait(struct device * dev)
-{
- struct completion c;
- init_completion(&c);
- dev->complete = &c;
- device_unregister(dev);
- wait_for_completion(&c);
-}
-
-/**
* device_for_each_child - device child iterator.
* @dev: parent struct device.
* @data: data for the callback.
@@ -421,7 +399,6 @@ EXPORT_SYMBOL(device_register);
EXPORT_SYMBOL(device_del);
EXPORT_SYMBOL(device_unregister);
-EXPORT_SYMBOL(device_unregister_wait);
EXPORT_SYMBOL(get_device);
EXPORT_SYMBOL(put_device);
EXPORT_SYMBOL(device_find);