• Jaegeuk Kim's avatar
    f2fs: fix handling orphan inodes · cbd56e7d
    Jaegeuk Kim authored
    This patch fixes mishandling of the sbi->n_orphans variable.
    
    If users request lots of f2fs_unlink(), check_orphan_space() could be contended.
    In such the case, sbi->n_orphans can be read incorrectly so that f2fs_unlink()
    would fall into the wrong state which results in the failure of
    add_orphan_inode().
    
    So, let's increment sbi->n_orphans virtually prior to the actual orphan inode
    stuffs. After that, let's release sbi->n_orphans by calling release_orphan_inode
    or remove_orphan_inode.
    Signed-off-by: default avatarJaegeuk Kim <jaegeuk.kim@samsung.com>
    cbd56e7d
dir.c 16.6 KB