When trying to run qemu-riscv64_smode_defconfig with 32 harts booting fails. The debug UART shows a message
alloc space exhausted 32 is the current maximum number of harts for machine virt in QEMU 7.0. Raise the default for SYS_MALLOC_F_LEN to 16 KiB. Move the setting to /Kconfig where we define SYS_MALLOC_F_LEN for other architectures too. Signed-off-by: Heinrich Schuchardt <heinrich.schucha...@canonical.com> --- v2: move the setting to /Kconfig --- Kconfig | 2 +- arch/riscv/Kconfig | 3 --- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/Kconfig b/Kconfig index 112745440b..678317e4d3 100644 --- a/Kconfig +++ b/Kconfig @@ -248,7 +248,7 @@ config SYS_MALLOC_F_LEN hex "Size of malloc() pool before relocation" depends on SYS_MALLOC_F default 0x1000 if AM33XX - default 0x4000 if SANDBOX + default 0x4000 if SANDBOX || RISCV default 0x2000 if (ARCH_IMX8 || ARCH_IMX8M || ARCH_MX7 || \ ARCH_MX7ULP || ARCH_MX6 || ARCH_MX5 || \ ARCH_LS1012A || ARCH_LS1021A || ARCH_LS1043A || \ diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig index ba29e70acf..78e964db12 100644 --- a/arch/riscv/Kconfig +++ b/arch/riscv/Kconfig @@ -195,9 +195,6 @@ config ANDES_PLIC The Andes PLIC block holds memory-mapped claim and pending registers associated with software interrupt. -config SYS_MALLOC_F_LEN - default 0x1000 - config SMP bool "Symmetric Multi-Processing" depends on SBI_V01 || !RISCV_SMODE -- 2.34.1