diff options
Diffstat (limited to 'fs/configfs/symlink.c')
-rw-r--r-- | fs/configfs/symlink.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/fs/configfs/symlink.c b/fs/configfs/symlink.c index 2817153d33c..cc9f2546ea4 100644 --- a/fs/configfs/symlink.c +++ b/fs/configfs/symlink.c | |||
@@ -110,13 +110,13 @@ out: | |||
110 | 110 | ||
111 | 111 | ||
112 | static int get_target(const char *symname, struct path *path, | 112 | static int get_target(const char *symname, struct path *path, |
113 | struct config_item **target) | 113 | struct config_item **target, struct super_block *sb) |
114 | { | 114 | { |
115 | int ret; | 115 | int ret; |
116 | 116 | ||
117 | ret = kern_path(symname, LOOKUP_FOLLOW|LOOKUP_DIRECTORY, path); | 117 | ret = kern_path(symname, LOOKUP_FOLLOW|LOOKUP_DIRECTORY, path); |
118 | if (!ret) { | 118 | if (!ret) { |
119 | if (path->dentry->d_sb == configfs_sb) { | 119 | if (path->dentry->d_sb == sb) { |
120 | *target = configfs_get_config_item(path->dentry); | 120 | *target = configfs_get_config_item(path->dentry); |
121 | if (!*target) { | 121 | if (!*target) { |
122 | ret = -ENOENT; | 122 | ret = -ENOENT; |
@@ -158,7 +158,7 @@ int configfs_symlink(struct inode *dir, struct dentry *dentry, const char *symna | |||
158 | !type->ct_item_ops->allow_link) | 158 | !type->ct_item_ops->allow_link) |
159 | goto out_put; | 159 | goto out_put; |
160 | 160 | ||
161 | ret = get_target(symname, &path, &target_item); | 161 | ret = get_target(symname, &path, &target_item, dentry->d_sb); |
162 | if (ret) | 162 | if (ret) |
163 | goto out_put; | 163 | goto out_put; |
164 | 164 | ||