mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-11 04:18:39 +08:00
f2fs: fix to release node block count in error path of f2fs_new_node_page()
It missed to call dec_valid_node_count() to release node block count
in error path, fix it.
Fixes: 141170b759
("f2fs: fix to avoid use f2fs_bug_on() in f2fs_new_node_page()")
Signed-off-by: Chao Yu <chao@kernel.org>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
This commit is contained in:
parent
0a4ed2d97c
commit
0fa4e57c1d
@ -1329,6 +1329,7 @@ struct page *f2fs_new_node_page(struct dnode_of_data *dn, unsigned int ofs)
|
||||
}
|
||||
if (unlikely(new_ni.blk_addr != NULL_ADDR)) {
|
||||
err = -EFSCORRUPTED;
|
||||
dec_valid_node_count(sbi, dn->inode, !ofs);
|
||||
set_sbi_flag(sbi, SBI_NEED_FSCK);
|
||||
f2fs_handle_error(sbi, ERROR_INVALID_BLKADDR);
|
||||
goto fail;
|
||||
@ -1355,7 +1356,6 @@ struct page *f2fs_new_node_page(struct dnode_of_data *dn, unsigned int ofs)
|
||||
if (ofs == 0)
|
||||
inc_valid_inode_count(sbi);
|
||||
return page;
|
||||
|
||||
fail:
|
||||
clear_node_page_dirty(page);
|
||||
f2fs_put_page(page, 1);
|
||||
|
Loading…
Reference in New Issue
Block a user