]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
ext4: correct the error handle in ext4_fallocate()
authorZhang Yi <yi.zhang@huawei.com>
Wed, 19 Mar 2025 02:35:57 +0000 (10:35 +0800)
committerTheodore Ts'o <tytso@mit.edu>
Fri, 21 Mar 2025 05:33:11 +0000 (01:33 -0400)
The error out label of file_modified() should be out_inode_lock in
ext4_fallocate().

Fixes: 2890e5e0f49e ("ext4: move out common parts into ext4_fallocate()")
Reported-by: Baokun Li <libaokun1@huawei.com>
Signed-off-by: Zhang Yi <yi.zhang@huawei.com>
Reviewed-by: Baokun Li <libaokun1@huawei.com>
Link: https://patch.msgid.link/20250319023557.2785018-1-yi.zhang@huaweicloud.com
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
fs/ext4/extents.c

index 1639f75b54dff4b1fe33ae5fe16e28b726557ace..c616a16a9f36d3001a66cd8cfc809efd73b1843b 100644 (file)
@@ -4744,7 +4744,7 @@ long ext4_fallocate(struct file *file, int mode, loff_t offset, loff_t len)
 
        ret = file_modified(file);
        if (ret)
-               return ret;
+               goto out_inode_lock;
 
        if ((mode & FALLOC_FL_MODE_MASK) == FALLOC_FL_ALLOCATE_RANGE) {
                ret = ext4_do_fallocate(file, offset, len, mode);