Commit f91c01ac authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman

[PATCH] sysfs: add sysfs_rename_dir()

Based on a patch written by Dan Aloni <da-x@gmx.net>
parent 04798180
......@@ -121,7 +121,29 @@ void sysfs_remove_dir(struct kobject * kobj)
dput(parent);
}
void sysfs_rename_dir(struct kobject * kobj, char *new_name)
{
struct dentry * new_dentry, * parent;
if (!strcmp(kobj->name, new_name))
return;
if (!kobj->parent)
return;
parent = kobj->parent->dentry;
down(&parent->d_inode->i_sem);
new_dentry = sysfs_get_dentry(parent, new_name);
d_move(kobj->dentry, new_dentry);
strlcpy(kobj->name, new_name, KOBJ_NAME_LEN);
up(&parent->d_inode->i_sem);
}
EXPORT_SYMBOL(sysfs_create_dir);
EXPORT_SYMBOL(sysfs_remove_dir);
EXPORT_SYMBOL(sysfs_rename_dir);
......@@ -39,6 +39,9 @@ sysfs_create_dir(struct kobject *);
extern void
sysfs_remove_dir(struct kobject *);
extern void
sysfs_rename_dir(struct kobject *, char *new_name);
extern int
sysfs_create_file(struct kobject *, struct attribute *);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment