• Jaegeuk Kim's avatar
    f2fs: fix incorrect iputs during the dentry recovery · afc3eda2
    Jaegeuk Kim authored
    - iget/iput flow in the dentry recovery process
    
    1. *dir* = f2fs_iget
    2. set FI_DELAY_IPUT to *dir*
    3. add *dir* to the dirty_dir_list
    		   - __f2fs_add_link
    		     - recover_dentry)
    4. iput *dir* by remove_dirty_dir_inode
    		   - sync_dirty_dir_inodes
    		     - write_chekcpoint
    
    If *dir*'s i_count is not 1 (i.e., root dir), remove_dirty_dir_inode is called
    later and then iput is triggered again due to the FI_DELAY_IPUT flag.
    So, let's unset the flag properly once iput is triggered.
    Signed-off-by: default avatarJaegeuk Kim <jaegeuk.kim@samsung.com>
    afc3eda2
checkpoint.c 20.6 KB