diff options
Diffstat (limited to 'fs')
| -rw-r--r-- | fs/9p/vfs_inode.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/fs/9p/vfs_inode.c b/fs/9p/vfs_inode.c index 3bbf705634b2..bce66f56c62c 100644 --- a/fs/9p/vfs_inode.c +++ b/fs/9p/vfs_inode.c | |||
| @@ -904,9 +904,12 @@ v9fs_vfs_rename(struct inode *old_dir, struct dentry *old_dentry, | |||
| 904 | 904 | ||
| 905 | down_write(&v9ses->rename_sem); | 905 | down_write(&v9ses->rename_sem); |
| 906 | if (v9fs_proto_dotl(v9ses)) { | 906 | if (v9fs_proto_dotl(v9ses)) { |
| 907 | retval = p9_client_rename(oldfid, newdirfid, | 907 | retval = p9_client_renameat(olddirfid, old_dentry->d_name.name, |
| 908 | (char *) new_dentry->d_name.name); | 908 | newdirfid, new_dentry->d_name.name); |
| 909 | if (retval != -ENOSYS) | 909 | if (retval == -EOPNOTSUPP) |
| 910 | retval = p9_client_rename(oldfid, newdirfid, | ||
| 911 | new_dentry->d_name.name); | ||
| 912 | if (retval != -EOPNOTSUPP) | ||
| 910 | goto clunk_newdir; | 913 | goto clunk_newdir; |
| 911 | } | 914 | } |
| 912 | if (old_dentry->d_parent != new_dentry->d_parent) { | 915 | if (old_dentry->d_parent != new_dentry->d_parent) { |
