hfsplus: free space correcly for files unlinked while open
hfsplus_delete_inode only truncates away all block allocations if i_nlink is zero. Make sure we properly drop the unlink count even when doing the rename hack for open but unlinked files. Signed-off-by: Christoph Hellwig <hch@tuxera.com>
This commit is contained in:
parent
e50fb58b5b
commit
85b8fe8cc4
1 changed files with 3 additions and 1 deletions
|
@ -317,8 +317,10 @@ static int hfsplus_unlink(struct inode *dir, struct dentry *dentry)
|
|||
res = hfsplus_rename_cat(inode->i_ino,
|
||||
dir, &dentry->d_name,
|
||||
sbi->hidden_dir, &str);
|
||||
if (!res)
|
||||
if (!res) {
|
||||
inode->i_flags |= S_DEAD;
|
||||
drop_nlink(inode);
|
||||
}
|
||||
goto out;
|
||||
}
|
||||
res = hfsplus_delete_cat(cnid, dir, &dentry->d_name);
|
||||
|
|
Loading…
Reference in a new issue