diff options
author | Yan, Zheng <zheng.yan@oracle.com> | 2009-10-09 09:25:16 -0400 |
---|---|---|
committer | Chris Mason <chris.mason@oracle.com> | 2009-10-09 09:25:16 -0400 |
commit | efefb1438be269897585934fc6c05deb4dfa01ce (patch) | |
tree | 41d3bf63789bc656421dfbd651bf38caf580ec03 /fs/btrfs/ioctl.c | |
parent | ff782e0a131c7f669445c07fe5c7ba91e043b7ed (diff) | |
download | lwn-efefb1438be269897585934fc6c05deb4dfa01ce.tar.gz lwn-efefb1438be269897585934fc6c05deb4dfa01ce.zip |
Btrfs: remove negative dentry when deleting subvolumne
The use of btrfs_dentry_delete is removing dentries from the
dcache when deleting subvolumne. btrfs_dentry_delete ignores
negative dentries. This is incorrect since if we don't remove
the negative dentry, its parent dentry can't be removed.
Signed-off-by: Yan Zheng <zheng.yan@oracle.com>
Signed-off-by: Chris Mason <chris.mason@oracle.com>
Diffstat (limited to 'fs/btrfs/ioctl.c')
-rw-r--r-- | fs/btrfs/ioctl.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c index 9a780c8d0ac8..e8795becad4c 100644 --- a/fs/btrfs/ioctl.c +++ b/fs/btrfs/ioctl.c @@ -830,6 +830,7 @@ out_up_write: out_unlock: mutex_unlock(&inode->i_mutex); if (!err) { + shrink_dcache_sb(root->fs_info->sb); btrfs_invalidate_inodes(dest); d_delete(dentry); } |