• Jan Kara's avatar
    quota: Properly disable quotas when add_dquot_ref() fails · 6a4e3363
    Jan Kara authored
    
    
    When add_dquot_ref() fails (usually due to IO error or ENOMEM), we want
    to disable quotas we are trying to enable. However dquot_disable() call
    was passed just the flags we are enabling so in case flags ==
    DQUOT_USAGE_ENABLED dquot_disable() call will just fail with EINVAL
    instead of properly disabling quotas. Fix the problem by always passing
    DQUOT_LIMITS_ENABLED | DQUOT_USAGE_ENABLED to dquot_disable() in this
    case.
    Reported-and-tested-by: default avatarYe Bin <yebin10@huawei.com>
    Reported-by: syzbot+e633c79ceaecbf479854@syzkaller.appspotmail.com
    Signed-off-by: default avatarJan Kara <jack@suse.cz>
    Message-Id: <20230605140731.2427629-2-yebin10@huawei.com>
    6a4e3363
dquot.c 79.2 KB