Commit 02ea2104 authored by Mingming Cao's avatar Mingming Cao Committed by Linus Torvalds

[PATCH] ext4: enable building of ext4

Originally part of a patch from Mingming Cao and Randy Dunlap.  Reorganized
by Shaggy.
Signed-off-by: default avatarRandy Dunlap <>
Signed-off-by: Mingming Cao<>
Signed-off-by: default avatarDave Kleikamp <>
Signed-off-by: default avatarAndrew Morton <>
Signed-off-by: default avatarLinus Torvalds <>
parent 617ba13b
......@@ -140,6 +140,73 @@ config EXT3_FS_SECURITY
If you are not using a security module that requires using
extended attributes for file security labels, say N.
config EXT4DEV_FS
tristate "Ext4dev/ext4 extended fs support development (EXPERIMENTAL)"
select JBD
Ext4dev is a predecessor filesystem of the next generation
extended fs ext4, based on ext3 filesystem code. It will be
renamed ext4 fs later, once ext4dev is mature and stabilized.
Unlike the change from ext2 filesystem to ext3 filesystem,
the on-disk format of ext4dev is not the same as ext3 any more:
it is based on extent maps and it supports 48-bit physical block
numbers. These combined on-disk format changes will allow
ext4dev/ext4 to handle more than 16 TB filesystem volumes --
a hard limit that ext3 cannot overcome without changing the
on-disk format.
Other than extent maps and 48-bit block numbers, ext4dev also is
likely to have other new features such as persistent preallocation,
high resolution time stamps, and larger file support etc. These
features will be added to ext4dev gradually.
To compile this file system support as a module, choose M here. The
module will be called ext4dev. Be aware, however, that the filesystem
of your root partition (the one containing the directory /) cannot
be compiled as a module, and so this could be dangerous.
If unsure, say N.
bool "Ext4dev extended attributes"
depends on EXT4DEV_FS
default y
Extended attributes are name:value pairs associated with inodes by
the kernel or by users (see the attr(5) manual page, or visit
<> for details).
If unsure, say N.
You need this for POSIX ACL support on ext4dev/ext4.
bool "Ext4dev POSIX Access Control Lists"
depends on EXT4DEV_FS_XATTR
POSIX Access Control Lists (ACLs) support permissions for users and
groups beyond the owner/group/world scheme.
To learn more about Access Control Lists, visit the POSIX ACLs for
Linux website <>.
If you don't know what Access Control Lists are, say N
bool "Ext4dev Security Labels"
depends on EXT4DEV_FS_XATTR
Security labels support alternative access control models
implemented by security modules like SELinux. This option
enables an extended attribute handler for file security
labels in the ext4dev/ext4 filesystem.
If you are not using a security module that requires using
extended attributes for file security labels, say N.
config JBD
......@@ -173,11 +240,11 @@ config JBD_DEBUG
"echo 0 > /proc/sys/fs/jbd-debug".
# Meta block cache for Extended Attributes (ext2/ext3)
# Meta block cache for Extended Attributes (ext2/ext3/ext4)
depends on EXT2_FS_XATTR || EXT3_FS_XATTR
default y if EXT2_FS=y || EXT3_FS=y
default m if EXT2_FS=m || EXT3_FS=m
default y if EXT2_FS=y || EXT3_FS=y || EXT4DEV_FS=y
default m if EXT2_FS=m || EXT3_FS=m || EXT4DEV_FS=m
tristate "Reiserfs support"
......@@ -62,6 +62,7 @@ obj-$(CONFIG_DLM) += dlm/
# Do not add any filesystems before this line
obj-$(CONFIG_REISERFS_FS) += reiserfs/
obj-$(CONFIG_EXT3_FS) += ext3/ # Before ext2 so root fs can be ext3
obj-$(CONFIG_EXT4DEV_FS) += ext4/ # Before ext2 so root fs can be ext4dev
obj-$(CONFIG_JBD) += jbd/
obj-$(CONFIG_EXT2_FS) += ext2/
obj-$(CONFIG_CRAMFS) += cramfs/
......@@ -8,6 +8,7 @@
#define EFS_SUPER_MAGIC 0x414A53
#define EXT2_SUPER_MAGIC 0xEF53
#define EXT3_SUPER_MAGIC 0xEF53
#define EXT4_SUPER_MAGIC 0xEF53
#define HPFS_SUPER_MAGIC 0xf995e849
#define ISOFS_SUPER_MAGIC 0x9660
#define JFFS2_SUPER_MAGIC 0x72b6
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment