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 help
Allows you to change the percentage of reserved blocks in the root filesystem 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 config TARGET_ROOTFS_ISO
bool "iso" bool "iso"
default n default n

View file

@ -184,11 +184,11 @@ ifneq ($(CONFIG_TARGET_ROOTFS_TARGZ),)
endif endif
ifneq ($(CONFIG_TARGET_ROOTFS_EXT4FS),) 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 define Image/mkfs/ext4
# generate an ext2 fs # 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 # convert it to ext4
$(STAGING_DIR_HOST)/bin/tune2fs -O extents,uninit_bg,dir_index $(KDIR)/root.ext4 $(STAGING_DIR_HOST)/bin/tune2fs -O extents,uninit_bg,dir_index $(KDIR)/root.ext4
# fix it up # fix it up