Re: [PATCH] ubifs: Don't discard nodes in recovery when ecc err detected

From: Richard Weinberger
Date: Sun Mar 01 2020 - 15:47:04 EST


Zhihao Cheng,

On Fri, Feb 21, 2020 at 2:57 PM Zhihao Cheng <chengzhihao1@xxxxxxxxxx> wrote:
>
> The following process will lead TNC to find no corresponding inode node
> (Reproduce method see Link):

Please help me to understand what exactly is going on.

> 1. Garbage collection.
> 1) move valid inode nodes from leb A to leb B
> (The leb number of B has been written as GC type bud node in log)
> 2) unmap leb A, and corresponding peb is erased
> (GCed inode nodes exist only on leb B)

At this point all valid nodes are written to LEB B, right?

> 2. Poweroff. A node near the end of the LEB is corrupted before power
> on, which is uncorrectable error of ECC.

If writing nodes to B has finished, these pages should be stable.
How can a power-cut affect the pages where these valid nodes sit?

--
Thanks,
//richard