• Yunlei He's avatar
    f2fs: report error if quota off error during umount · cda9cc59
    Yunlei He authored
    Now, we depend on fsck to ensure quota file data is ok,
    so we scan whole partition if checkpoint without umount
    flag. It's same for quota off error case, which may make
    quota file data inconsistent.
    
    generic/019 reports below error:
    
     __quota_error: 1160 callbacks suppressed
     Quota error (device zram1): write_blk: dquota write failed
     Quota error (device zram1): qtree_write_dquot: Error -28 occurred while creating quota
     Quota error (device zram1): write_blk: dquota write failed
     Quota error (device zram1): qtree_write_dquot: Error -28 occurred while creating quota
     Quota error (device zram1): write_blk: dquota write failed
     Quota error (device zram1): qtree_write_dquot: Error -28 occurred while creating quota
     Quota error (device zram1): write_blk: dquota write failed
     Quota error (device zram1): qtree_write_dquot: Error -28 occurred while creating quota
     Quota error (device zram1): write_blk: dquota write failed
     Quota error (device zram1): qtree_write_dquot: Error -28 occurred while creating quota
     VFS: Busy inodes after unmount of zram1. Self-destruct in 5 seconds.  Have a nice day...
    
    If we failed in below path due to fail to write dquot block, we will miss
    to release quota inode, fix it.
    
    - f2fs_put_super
     - f2fs_quota_off_umount
      - f2fs_quota_off
       - f2fs_quota_sync   <-- failed
       - dquot_quota_off   <-- missed to call
    Signed-off-by: default avatarYunlei He <heyunlei@huawei.com>
    Signed-off-by: default avatarChao Yu <yuchao0@huawei.com>
    Signed-off-by: default avatarJaegeuk Kim <jaegeuk@kernel.org>
    cda9cc59
super.c 83.5 KB