diff mbox

[15/47] misc: don't allow mk_hugefiles unless the fs supports extents

Message ID 20141107215224.883.32873.stgit@birch.djwong.org
State Accepted, archived
Headers show

Commit Message

Darrick Wong Nov. 7, 2014, 9:52 p.m. UTC
The current mk_hugefile code in mke2fs doesn't support creating
non-extent files, so disable the functionality when we're mkfs'ing
without extent support.

The fallocate patches further on will eliminate the need for this.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
---
 misc/mk_hugefiles.c |    4 ++++
 1 file changed, 4 insertions(+)



--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

Theodore Ts'o Dec. 14, 2014, 2:51 a.m. UTC | #1
On Fri, Nov 07, 2014 at 01:52:24PM -0800, Darrick J. Wong wrote:
> The current mk_hugefile code in mke2fs doesn't support creating
> non-extent files, so disable the functionality when we're mkfs'ing
> without extent support.
> 
> The fallocate patches further on will eliminate the need for this.
> 
> Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>

Applied, thanks.

					- Ted
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/misc/mk_hugefiles.c b/misc/mk_hugefiles.c
index 3e4274c..9097b7c 100644
--- a/misc/mk_hugefiles.c
+++ b/misc/mk_hugefiles.c
@@ -477,6 +477,10 @@  errcode_t mk_hugefiles(ext2_filsys fs, const char *device_name)
 	if (!get_bool_from_profile(fs_types, "make_hugefiles", 0))
 		return 0;
 
+	if (!EXT2_HAS_INCOMPAT_FEATURE(fs->super,
+				       EXT3_FEATURE_INCOMPAT_EXTENTS))
+		return EXT2_ET_EXTENT_NOT_SUPPORTED;
+
 	uid = get_int_from_profile(fs_types, "hugefiles_uid", 0);
 	gid = get_int_from_profile(fs_types, "hugefiles_gid", 0);
 	fs->umask = get_int_from_profile(fs_types, "hugefiles_umask", 077);