sysfs rename dir problem
RFC 1/1 sysfs rename dir problem
In the sysfs_rename_dir function if something goes wrong then the directory name would no longer match the internal kobj name. Here's a patch I made to fix that but I'm not sure if it's 100% correct.
John
fs/sysfs/dir.c +8 -2
@@ -169,8 +169,14 @@down (&parent->d_inode->i_sem); new_dentry =sysfs_get_dentry (parent, new_name); -d_move (kobj->dentry, new_dentry); -kobject_set_name (kobj,new_name); +if (!IS_ERR (new_dentry)) { +if (kobject_set_name (kobj,new_name)) +d_move (kobj->dentry, new_dentry); +else { +d_delete (new_dentry); +dput (new_dentry); + } + }up (&parent->d_inode->i_sem); }