• A
    UBI: do not put eraseblocks to the corrupted list unnecessarily · 0525dac9
    Artem Bityutskiy 提交于
    Currently UBI maintains 2 lists of PEBs during scanning:
    1. 'erase' list - PEBs which have no corruptions but should be erased
    2. 'corr' list - PEBs which have some corruptions and should be erased
    
    But we do not really need 2 lists for PEBs which should be erased after
    scanning is done - this is redundant. So this patch makes sure all PEBs
    which are corrupted are moved to the head of the 'erase' list. We add
    them to the head to make sure they are erased first and we get rid of
    corruption ASAP.
    
    However, we do not remove the 'corr' list and realted functions, because
    the plan is to use this list for other purposes. Namely, we plan to
    put eraseblocks with corruption which does not look like it was caused
    by unclean power cut. Then we'll preserve thes PEBs in order to avoid
    killing potentially valuable user data.
    
    This patch also amends PEBs accounting, because it was closely tight to
    the 'erase'/'corr' lists separation.
    Signed-off-by: NArtem Bityutskiy <Artem.Bityutskiy@nokia.com>
    0525dac9
scan.c 38.8 KB