From c55bee664af95285dc7f19da79ce572e8ead7010 Mon Sep 17 00:00:00 2001 From: Thomas Stokes Date: Sun, 9 Aug 2026 17:18:25 +0800 Subject: [PATCH] wasm: support larger overlay-backed guests Increase the boot-time flattened device-tree buffer from 2 KiB to 4 KiB so the root disk, install disk, console, entropy, network, and virtiofs devices fit together. Enable OverlayFS in the wasm defconfig and regenerate the minimal defconfig through olddefconfig and savedefconfig. TMPFS_XATTR remains unavailable because wasm is NOMMU and its TMPFS dependency requires SHMEM/MMU. Agent-Session: codex:019fe4bc-be37-76d2-84ac-6064346b040c --- arch/wasm/configs/defconfig | 25 ++++++++----------------- arch/wasm/kernel/setup.c | 2 +- 2 files changed, 9 insertions(+), 18 deletions(-) diff --git a/arch/wasm/configs/defconfig b/arch/wasm/configs/defconfig index 94a10d7b58941c..1ef5e071791ef1 100644 --- a/arch/wasm/configs/defconfig +++ b/arch/wasm/configs/defconfig @@ -1,4 +1,5 @@ # CONFIG_LOCALVERSION_AUTO is not set +CONFIG_POSIX_MQUEUE=y CONFIG_NO_HZ_IDLE=y CONFIG_HIGH_RES_TIMERS=y # CONFIG_CPU_ISOLATION is not set @@ -11,28 +12,17 @@ CONFIG_BLK_DEV_INITRD=y # CONFIG_RD_ZSTD is not set # CONFIG_INITRAMFS_PRESERVE_MTIME is not set CONFIG_CC_OPTIMIZE_FOR_SIZE=y -# CONFIG_SYSFS_SYSCALL is not set +CONFIG_EXPERT=y # CONFIG_FHANDLE is not set -CONFIG_POSIX_TIMERS=y -CONFIG_PANIC_TIMEOUT=-1 -CONFIG_POSIX_MQUEUE=y -# CONFIG_BASE_FULL is not set -CONFIG_EPOLL=y # CONFIG_SIGNALFD is not set # CONFIG_TIMERFD is not set -CONFIG_EVENTFD=y # CONFIG_AIO is not set # CONFIG_IO_URING is not set # CONFIG_ADVISE_SYSCALLS is not set # CONFIG_MEMBARRIER is not set -# CONFIG_KALLSYMS is not set CONFIG_KCMP=y -CONFIG_EMBEDDED=y -CONFIG_EXPERT=y -CONFIG_MAGIC_SYSRQ=y CONFIG_VIRTIO_WASM=y # CONFIG_COREDUMP is not set -CONFIG_SLOB=y # CONFIG_COMPAT_BRK is not set # CONFIG_VM_EVENT_COUNTERS is not set CONFIG_NET=y @@ -52,12 +42,7 @@ CONFIG_NETDEVICES=y CONFIG_VIRTIO_NET=y CONFIG_VIRTIO_CONSOLE=y CONFIG_HW_RANDOM_VIRTIO=y -CONFIG_FUSE_FS=y -CONFIG_VIRTIO_FS=y -# CONFIG_FUSE_PASSTHROUGH is not set # CONFIG_DEVMEM is not set -# CONFIG_RANDOM_TRUST_CPU is not set -# CONFIG_RANDOM_TRUST_BOOTLOADER is not set # CONFIG_HWMON is not set # CONFIG_USB_SUPPORT is not set # CONFIG_VIRTIO_MENU is not set @@ -66,7 +51,13 @@ CONFIG_EXT2_FS=y CONFIG_EXT4_FS=y # CONFIG_DNOTIFY is not set # CONFIG_INOTIFY_USER is not set +CONFIG_FUSE_FS=y +CONFIG_VIRTIO_FS=y +# CONFIG_FUSE_PASSTHROUGH is not set +CONFIG_OVERLAY_FS=y CONFIG_SQUASHFS=y # CONFIG_DEBUG_MISC is not set +CONFIG_MAGIC_SYSRQ=y +CONFIG_PANIC_TIMEOUT=-1 # CONFIG_RCU_TRACE is not set # CONFIG_RUNTIME_TESTING_MENU is not set diff --git a/arch/wasm/kernel/setup.c b/arch/wasm/kernel/setup.c index 17fc815f14e96b..a00575de4e2590 100644 --- a/arch/wasm/kernel/setup.c +++ b/arch/wasm/kernel/setup.c @@ -28,7 +28,7 @@ static void do_start_kernel(void *unused) __attribute__((export_name("boot"))) void __init _start(void) { - static char devicetree[2048]; + static char devicetree[4096]; static char initramfs[512]; int node;