]> www.infradead.org Git - mtd-utils.git/commit
fsck.ubifs: Recover isize
authorZhihao Cheng <chengzhihao1@huawei.com>
Mon, 11 Nov 2024 09:07:59 +0000 (17:07 +0800)
committerDavid Oberhollenzer <david.oberhollenzer@sigma-star.at>
Mon, 11 Nov 2024 09:32:46 +0000 (10:32 +0100)
commitacedb85997d7b04b4546154d8acc5d916c020630
tree4a279bb48a709eead122ab37a2c7782015dd6c93
parent0fbfbf59714b73a0d0c487c454c22d72b2c78e68
fsck.ubifs: Recover isize

This is the 5/18 step of fsck. Recover isize. There could be following
steps and possible errors:
 Step 1. Traverse size tree, lookup corresponding inode from TNC
  a. corrupted node searched from TNC: skip node for danger mode and
     normal mode with 'yes' answer, other modes will exit.
  b. corrupted index node read from TNC: danger mode with rebuild_fs and
     normal mode with 'yes' answer will turn to rebuild filesystem, other
     modes will exit.
 Step 2. update isize for inode. Keep <inum, isize> in size tree for check
 mode, update inode node in place for other modes.

Signed-off-by: Zhihao Cheng <chengzhihao1@huawei.com>
Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
ubifs-utils/fsck.ubifs/fsck.ubifs.c
ubifs-utils/fsck.ubifs/load_fs.c
ubifs-utils/libubifs/recovery.c