Ext2: mark inode dirty after the function dquot_free_block_nodirty is called
We should mark inode dirty after the function dquot_free_block_nodirty is called.Besides,add a check whether it is necessary to call dquot_free_block_nodirty functon. Signed-off-by: Wang Shilong <wangsl-fnst@cn.fujitsu.com> Signed-off-by: Jan Kara <jack@suse.cz>
This commit is contained in:
parent
98783e453c
commit
8e3dffc651
|
@ -568,8 +568,11 @@ do_more:
|
||||||
}
|
}
|
||||||
error_return:
|
error_return:
|
||||||
brelse(bitmap_bh);
|
brelse(bitmap_bh);
|
||||||
|
if (freed) {
|
||||||
release_blocks(sb, freed);
|
release_blocks(sb, freed);
|
||||||
dquot_free_block_nodirty(inode, freed);
|
dquot_free_block_nodirty(inode, freed);
|
||||||
|
mark_inode_dirty(inode);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1412,9 +1415,11 @@ allocated:
|
||||||
|
|
||||||
*errp = 0;
|
*errp = 0;
|
||||||
brelse(bitmap_bh);
|
brelse(bitmap_bh);
|
||||||
|
if (num < *count) {
|
||||||
dquot_free_block_nodirty(inode, *count-num);
|
dquot_free_block_nodirty(inode, *count-num);
|
||||||
mark_inode_dirty(inode);
|
mark_inode_dirty(inode);
|
||||||
*count = num;
|
*count = num;
|
||||||
|
}
|
||||||
return ret_block;
|
return ret_block;
|
||||||
|
|
||||||
io_error:
|
io_error:
|
||||||
|
|
Loading…
Reference in a new issue