image: add support for EROFS rootfs image generation

Add support for generating EROFS rootfs images.

The EROFS filesystem can offer competitive I/O performance while
minimizing final image size when using the MicroLZMA compressor.

Target platform: linux-x86_generic (target-i386_pentium4_musl)

Filesystem     Image Size
=============  ==========
root.erofs     4882432
root.ext4      109051904
root.squashfs  4903302

Co-Developed-by: Gao Xiang <hsiangkao@linux.alibaba.com>
Signed-off-by: Gao Xiang <hsiangkao@linux.alibaba.com>
Link: https://github.com/openwrt/openwrt/pull/19244
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
This commit is contained in:
Gao Xiang
2025-06-26 01:45:22 +08:00
committed by Christian Marangi
parent 9ece943540
commit f7fa414d3b
8 changed files with 86 additions and 0 deletions

View File

@@ -1278,6 +1278,23 @@ config KERNEL_BTRFS_FS
Say Y here if you want to make the kernel to be able to boot off a
BTRFS partition.
config KERNEL_EROFS_FS
bool "Compile the kernel with built-in EROFS support"
help
Say Y here if you want to make the kernel to be able to boot off a
EROFS partition.
config KERNEL_EROFS_FS_XATTR
bool "EROFS XATTR support"
config KERNEL_EROFS_FS_ZIP
bool
default y if KERNEL_EROFS_FS
config KERNEL_EROFS_FS_ZIP_LZMA
bool
default y if KERNEL_EROFS_FS
menu "Filesystem ACL and attr support options"
config USE_FS_ACL_ATTR
bool "Use filesystem ACL and attr support by default"
@@ -1298,6 +1315,11 @@ menu "Filesystem ACL and attr support options"
select KERNEL_FS_POSIX_ACL
default y if USE_FS_ACL_ATTR
config KERNEL_EROFS_FS_POSIX_ACL
bool "Enable POSIX ACL for EROFS Filesystems"
select KERNEL_FS_POSIX_ACL
default y if USE_FS_ACL_ATTR
config KERNEL_EXT4_FS_POSIX_ACL
bool "Enable POSIX ACL for Ext4 Filesystems"
select KERNEL_FS_POSIX_ACL
@@ -1440,6 +1462,11 @@ config KERNEL_LSM
default "lockdown,yama,loadpin,safesetid,integrity,selinux"
depends on KERNEL_SECURITY_SELINUX
config KERNEL_EROFS_FS_SECURITY
bool "EROFS Security Labels"
default y if !SMALL_FLASH
select KERNEL_EROFS_FS_XATTR
config KERNEL_EXT4_FS_SECURITY
bool "Ext4 Security Labels"
default y if !SMALL_FLASH