diff options
author | Miklos Szeredi <mszeredi@suse.cz> | 2009-12-03 15:58:56 -0500 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2009-12-03 15:58:56 -0500 |
commit | e48de5ec25b37d42292c876c1d3337766aae89bd (patch) | |
tree | de35cc77f7d99de0c3962a213a2b4c5385065987 /fs/nfs/dir.c | |
parent | 9c4c761a629caa5572c1a29a8288416070d5d6b7 (diff) |
nfs: remove unnecessary check from nfs_rename()
VFS already checks if both source and target are directories.
Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs/dir.c')
-rw-r--r-- | fs/nfs/dir.c | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c index 7cb298525ee..b5fae1953e9 100644 --- a/fs/nfs/dir.c +++ b/fs/nfs/dir.c | |||
@@ -1601,13 +1601,8 @@ static int nfs_rename(struct inode *old_dir, struct dentry *old_dentry, | |||
1601 | * silly-rename. If the silly-rename succeeds, the | 1601 | * silly-rename. If the silly-rename succeeds, the |
1602 | * copied dentry is hashed and becomes the new target. | 1602 | * copied dentry is hashed and becomes the new target. |
1603 | */ | 1603 | */ |
1604 | if (!new_inode) | 1604 | if (new_inode && !S_ISDIR(new_inode->i_mode) && |
1605 | goto go_ahead; | 1605 | atomic_read(&new_dentry->d_count) > 2) { |
1606 | if (S_ISDIR(new_inode->i_mode)) { | ||
1607 | error = -EISDIR; | ||
1608 | if (!S_ISDIR(old_inode->i_mode)) | ||
1609 | goto out; | ||
1610 | } else if (atomic_read(&new_dentry->d_count) > 2) { | ||
1611 | int err; | 1606 | int err; |
1612 | /* copy the target dentry's name */ | 1607 | /* copy the target dentry's name */ |
1613 | dentry = d_alloc(new_dentry->d_parent, | 1608 | dentry = d_alloc(new_dentry->d_parent, |
@@ -1627,7 +1622,6 @@ static int nfs_rename(struct inode *old_dir, struct dentry *old_dentry, | |||
1627 | goto out; | 1622 | goto out; |
1628 | } | 1623 | } |
1629 | 1624 | ||
1630 | go_ahead: | ||
1631 | /* | 1625 | /* |
1632 | * ... prune child dentries and writebacks if needed. | 1626 | * ... prune child dentries and writebacks if needed. |
1633 | */ | 1627 | */ |