summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEric W. Biederman <ebiederm@xmission.com>2010-02-12 19:22:26 -0800
committerGreg Kroah-Hartman <gregkh@suse.de>2010-03-07 17:04:52 -0800
commit2354dcc7218853a6537ec722be40fde9a11c413b (patch)
tree6afea7dfd2026c7e87d1c7665b86d617cdf1cbd6
parent7cb32942d91a501b2df944928ccc9e6590ab237b (diff)
downloadlinux-2354dcc7218853a6537ec722be40fde9a11c413b.tar.gz
linux-2354dcc7218853a6537ec722be40fde9a11c413b.tar.bz2
linux-2354dcc7218853a6537ec722be40fde9a11c413b.zip
driver core: Use sysfs_rename_link in device_rename
Don't open code the renaming of symlinks in sysfs instead use the new helper function sysfs_rename_link Acked-by: Tejun Heo <tj@kernel.org> Acked-by: Serge Hallyn <serue@us.ibm.com> Signed-off-by: Eric W. Biederman <ebiederm@aristanetworks.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r--drivers/base/core.c18
1 files changed, 6 insertions, 12 deletions
diff --git a/drivers/base/core.c b/drivers/base/core.c
index b0d6646a2814..ef55df34ddd0 100644
--- a/drivers/base/core.c
+++ b/drivers/base/core.c
@@ -1578,22 +1578,16 @@ int device_rename(struct device *dev, char *new_name)
if (old_class_name) {
new_class_name = make_class_name(dev->class->name, &dev->kobj);
if (new_class_name) {
- error = sysfs_create_link_nowarn(&dev->parent->kobj,
- &dev->kobj,
- new_class_name);
- if (error)
- goto out;
- sysfs_remove_link(&dev->parent->kobj, old_class_name);
+ error = sysfs_rename_link(&dev->parent->kobj,
+ &dev->kobj,
+ old_class_name,
+ new_class_name);
}
}
#else
if (dev->class) {
- error = sysfs_create_link_nowarn(&dev->class->p->class_subsys.kobj,
- &dev->kobj, dev_name(dev));
- if (error)
- goto out;
- sysfs_remove_link(&dev->class->p->class_subsys.kobj,
- old_device_name);
+ error = sysfs_rename_link(&dev->class->p->class_subsys.kobj,
+ &dev->kobj, old_device_name, new_name);
}
#endif