Commit 0a736109 authored by Chao Yu's avatar Chao Yu Committed by Jaegeuk Kim
Browse files

f2fs: fix to do sanity check on node footer in __write_node_folio()



Add node footer sanity check during node folio's writeback, if sanity
check fails, let's shutdown filesystem to avoid looping to redirty
and writeback in .writepages.

Signed-off-by: default avatarChao Yu <chao@kernel.org>
Signed-off-by: default avatarJaegeuk Kim <jaegeuk@kernel.org>
parent f7b929ed
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -1763,7 +1763,11 @@ static bool __write_node_folio(struct folio *folio, bool atomic, bool *submitted

	/* get old block addr of this node page */
	nid = nid_of_node(folio);
	f2fs_bug_on(sbi, folio->index != nid);

	if (sanity_check_node_footer(sbi, folio, nid, NODE_TYPE_REGULAR)) {
		f2fs_handle_critical_error(sbi, STOP_CP_REASON_CORRUPTED_NID);
		goto redirty_out;
	}

	if (f2fs_get_node_info(sbi, nid, &ni, !do_balance))
		goto redirty_out;