summaryrefslogtreecommitdiff
path: root/fs
diff options
context:
space:
mode:
authorTom Goff <thomas.goff@boeing.com>2012-04-04 12:06:20 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-04-09 15:33:00 -0700
commit70fa4a62e913dde2d100e0be2711562742f58bee (patch)
tree272c4c79fd02fe89d628ef3ba12efc812184f179 /fs
parent3a4ffe930a2d2dad07604fe74d21b878decc6461 (diff)
downloadlinux-3.10-70fa4a62e913dde2d100e0be2711562742f58bee.tar.gz
linux-3.10-70fa4a62e913dde2d100e0be2711562742f58bee.tar.bz2
linux-3.10-70fa4a62e913dde2d100e0be2711562742f58bee.zip
sysfs: Update the name hash for an entry after changing the namespace
This is needed to allow renaming network devices that have been moved to another network namespace. Signed-off-by: Tom Goff <thomas.goff@boeing.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'fs')
-rw-r--r--fs/sysfs/dir.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/sysfs/dir.c b/fs/sysfs/dir.c
index 2a7a3f5d1ca..8ddc1021c79 100644
--- a/fs/sysfs/dir.c
+++ b/fs/sysfs/dir.c
@@ -878,7 +878,6 @@ int sysfs_rename(struct sysfs_dirent *sd,
dup_name = sd->s_name;
sd->s_name = new_name;
- sd->s_hash = sysfs_name_hash(sd->s_ns, sd->s_name);
}
/* Move to the appropriate place in the appropriate directories rbtree. */
@@ -886,6 +885,7 @@ int sysfs_rename(struct sysfs_dirent *sd,
sysfs_get(new_parent_sd);
sysfs_put(sd->s_parent);
sd->s_ns = new_ns;
+ sd->s_hash = sysfs_name_hash(sd->s_ns, sd->s_name);
sd->s_parent = new_parent_sd;
sysfs_link_sibling(sd);