image: ext4: allow to choose a block size for the rootfs

Signed-off-by: Michael Heimpold <mhei@heimpold.de>

SVN-Revision: 40924
This commit is contained in:
John Crispin 2014-06-02 12:44:04 +00:00
parent fbb05ce063
commit fe20272ab1
2 changed files with 26 additions and 2 deletions

View file

@ -86,6 +86,30 @@ menu "Target Images"
help
Allows you to change the percentage of reserved blocks in the root filesystem
choice
prompt "Root filesystem block size""
default TARGET_EXT4_BLOCKSIZE_4K
depends TARGET_ROOTFS_EXT4FS
help
Allows you to change the block size of the root filesystem
config TARGET_EXT4_BLOCKSIZE_4K
bool "4k"
config TARGET_EXT4_BLOCKSIZE_2K
bool "2k"
config TARGET_EXT4_BLOCKSIZE_1K
bool "1k"
endchoice
config TARGET_EXT4_BLOCKSIZE
int
default 4096 if TARGET_EXT4_BLOCKSIZE_4K
default 2048 if TARGET_EXT4_BLOCKSIZE_2K
default 1024 if TARGET_EXT4_BLOCKSIZE_1K
depends TARGET_ROOTFS_EXT4FS
config TARGET_ROOTFS_ISO
bool "iso"
default n

View file

@ -184,11 +184,11 @@ ifneq ($(CONFIG_TARGET_ROOTFS_TARGZ),)
endif
ifneq ($(CONFIG_TARGET_ROOTFS_EXT4FS),)
E2SIZE=$(shell echo $$(($(CONFIG_TARGET_ROOTFS_PARTSIZE)*1024)))
E2SIZE=$(shell echo $$(($(CONFIG_TARGET_ROOTFS_PARTSIZE)*1024*1024/$(CONFIG_TARGET_EXT4_BLOCKSIZE))))
define Image/mkfs/ext4
# generate an ext2 fs
$(STAGING_DIR_HOST)/bin/genext2fs -U -b $(E2SIZE) -N $(CONFIG_TARGET_ROOTFS_MAXINODE) -d $(TARGET_DIR)/ $(KDIR)/root.ext4 -m $(CONFIG_TARGET_ROOTFS_RESERVED_PCT) $(MKFS_DEVTABLE_OPT)
$(STAGING_DIR_HOST)/bin/genext2fs -U -B $(CONFIG_TARGET_EXT4_BLOCKSIZE) -b $(E2SIZE) -N $(CONFIG_TARGET_ROOTFS_MAXINODE) -d $(TARGET_DIR)/ $(KDIR)/root.ext4 -m $(CONFIG_TARGET_ROOTFS_RESERVED_PCT) $(MKFS_DEVTABLE_OPT)
# convert it to ext4
$(STAGING_DIR_HOST)/bin/tune2fs -O extents,uninit_bg,dir_index $(KDIR)/root.ext4
# fix it up