• Jaegeuk Kim's avatar
    f2fs: add bitmaps for empty or full NAT blocks · 22ad0b6a
    Jaegeuk Kim authored
    This patches adds bitmaps to represent empty or full NAT blocks containing
    free nid entries.
    
    If we can find valid crc|cp_ver in the last block of checkpoint pack, we'll
    use these bitmaps when building free nids. In order to avoid checkpointing
    burden, up-to-date bitmaps will be flushed only during umount time. So,
    normally we can get this gain, but when power-cut happens, we rely on fsck.f2fs
    which recovers this bitmap again.
    
    After this patch, we build free nids from nid #0 at mount time to make more
    full NAT blocks, but in runtime, we check empty NAT blocks to load free nids
    without loading any NAT pages from disk.
    Signed-off-by: default avatarJaegeuk Kim <jaegeuk@kernel.org>
    22ad0b6a
debug.c 15.9 KB