Commit e9f9f61d authored by Josh Triplett's avatar Josh Triplett Committed by Theodore Ts'o
Browse files

ext4: consolidate checks for resize of bigalloc into ext4_resize_begin



Two different places checked for attempts to resize a filesystem with
the bigalloc feature. Move the check into ext4_resize_begin, which both
places already call.

Signed-off-by: default avatarJosh Triplett <josh@joshtriplett.org>
Link: https://lore.kernel.org/r/bee03303d999225ecb3bfa5be8576b2f4c6edbe6.1623093259.git.josh@joshtriplett.org


Signed-off-by: default avatarTheodore Ts'o <tytso@mit.edu>
parent 310c097c
Loading
Loading
Loading
Loading
+0 −14
Original line number Diff line number Diff line
@@ -692,13 +692,6 @@ static long ext4_ioctl_group_add(struct file *file,
	if (err)
		return err;

	if (ext4_has_feature_bigalloc(sb)) {
		ext4_msg(sb, KERN_ERR,
			 "Online resizing not supported with bigalloc");
		err = -EOPNOTSUPP;
		goto group_add_out;
	}

	err = mnt_want_write_file(file);
	if (err)
		goto group_add_out;
@@ -921,13 +914,6 @@ static long __ext4_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
			goto group_extend_out;
		}

		if (ext4_has_feature_bigalloc(sb)) {
			ext4_msg(sb, KERN_ERR,
				 "Online resizing not supported with bigalloc");
			err = -EOPNOTSUPP;
			goto group_extend_out;
		}

		err = mnt_want_write_file(filp);
		if (err)
			goto group_extend_out;
+5 −0
Original line number Diff line number Diff line
@@ -74,6 +74,11 @@ int ext4_resize_begin(struct super_block *sb)
		return -EPERM;
	}

	if (ext4_has_feature_bigalloc(sb)) {
		ext4_msg(sb, KERN_ERR, "Online resizing not supported with bigalloc");
		return -EOPNOTSUPP;
	}

	if (test_and_set_bit_lock(EXT4_FLAGS_RESIZING,
				  &EXT4_SB(sb)->s_ext4_flags))
		ret = -EBUSY;