ext2: return error when fail to allocating memory in ioctl
authorChengguang Xu <cgxu519@mykernel.net>
Wed, 23 Oct 2019 13:56:43 +0000 (21:56 +0800)
committerJan Kara <jack@suse.cz>
Thu, 24 Oct 2019 07:24:40 +0000 (09:24 +0200)
Currently, we do not check memory allocation
result for ei->i_block_alloc_info in ioctl,
this patch checks it and returns error in
failure case.

Link: https://lore.kernel.org/r/20191023135643.28837-1-cgxu519@mykernel.net
Signed-off-by: Chengguang Xu <cgxu519@mykernel.net>
Signed-off-by: Jan Kara <jack@suse.cz>
fs/ext2/ioctl.c

index 1b853fb0b1639f6fb123954326bc886606a6be01..32a8d10b579df71a75ee13b645ece202e167d908 100644 (file)
@@ -145,10 +145,13 @@ setversion_out:
                if (ei->i_block_alloc_info){
                        struct ext2_reserve_window_node *rsv = &ei->i_block_alloc_info->rsv_window_node;
                        rsv->rsv_goal_size = rsv_window_size;
+               } else {
+                       ret = -ENOMEM;
                }
+
                mutex_unlock(&ei->truncate_mutex);
                mnt_drop_write_file(filp);
-               return 0;
+               return ret;
        }
        default:
                return -ENOTTY;