• Y
    f2fs: report error if quota off error during umount · cfc8a57a
    Yunlei He 提交于
    [ Upstream commit cda9cc59 ]
    
    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: NYunlei He <heyunlei@huawei.com>
    Signed-off-by: NChao Yu <yuchao0@huawei.com>
    Signed-off-by: NJaegeuk Kim <jaegeuk@kernel.org>
    Signed-off-by: NSasha Levin <sashal@kernel.org>
    Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    cfc8a57a
super.c 83.7 KB