Boot failed with systemd init

111 views
Skip to first unread message

s ren

unread,
Aug 29, 2022, 8:00:15 AM8/29/22
to FireSim
Hi,
    I want to boot a linux with systemd init by qemu,  but there is an error when booting as shown below. I had tried generating img with disk, and it works fine. But a img without disk cannot work.
origin_img_v2_a517afa8-dd71-449f-a67f-c291646e304g.jpg
This is my buildroot-config.

BR2_ARCH="riscv64"
BR2_riscv=y
BR2_riscv_g=y
BR2_RISCV_ISA_RVC=y
BR2_RISCV_64=y
BR2_RISCV_ABI_LP64D=y
BR2_ARCH_IS_64=y

#BR2_TARGET_GENERIC_ROOT_PASSWD="fpga"

BR2_GENERATE_LOCALE=""
BR2_PACKAGE_E2FSPROGS=y
BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=y

# compress the initramfs (requires gzip to exist in kernel or br2?)
BR2_TARGET_ROOTFS_CPIO=y
BR2_TARGET_ROOTFS_CPIO_GZIP=y

BR2_TARGET_ROOTFS_EXT2=y
BR2_TARGET_ROOTFS_EXT2_2=y
BR2_TARGET_ROOTFS_EXT2_2r1=y
BR2_TARGET_ROOTFS_EXT2_GEN=2
BR2_TARGET_ROOTFS_EXT2_INODES=0
BR2_TARGET_ROOTFS_EXT2_LABEL=""
BR2_TARGET_ROOTFS_EXT2_MKFS_OPTIONS="-O ^64bit"
BR2_TARGET_ROOTFS_EXT2_NONE=y
BR2_TARGET_ROOTFS_EXT2_RESBLKS=5
BR2_TARGET_ROOTFS_EXT2_REV=1
BR2_TARGET_ROOTFS_EXT2_SIZE="512M"

BR2_TOOLCHAIN_EXTERNAL=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX="$(ARCH)-unknown-linux-gnu"
BR2_TOOLCHAIN_EXTERNAL_CXX=y
BR2_TOOLCHAIN_EXTERNAL_GLIBC=y
BR2_TOOLCHAIN_EXTERNAL_HAS_SSP=y
BR2_TOOLCHAIN_EXTERNAL_INET_RPC=y
BR2_TOOLCHAIN_EXTERNAL_PATH="$(RISCV)"
BR2_TOOLCHAIN_EXTERNAL_PREFIX="$(ARCH)-unknown-linux-gnu"
BR2_TOOLCHAIN_EXTERNAL_PREINSTALLED=y
BR2_TOOLCHAIN_EXTRA_EXTERNAL_LIBS=""
BR2_TOOLCHAIN_HAS_FULL_GETTEXT=y
BR2_TOOLCHAIN_HAS_NATIVE_RPC=y
BR2_TOOLCHAIN_HAS_SSP=y
BR2_TOOLCHAIN_HAS_THREADS_DEBUG=y
BR2_TOOLCHAIN_USES_GLIBC=y

BR2_PACKAGE_GDB=y
BR2_PACKAGE_E2FSPROGS=y
BR2_PACKAGE_MINICOM=y
BR2_PACKAGE_SCREEN=y
BR2_PACKAGE_LIBGPIOD=y
BR2_PACKAGE_LIBGPIOD_TOOLS=y

BR2_INIT_SYSTEMD=y
BR2_PACKAGE_SKELETON_INIT_SYSTEMD=y
BR2_PACKAGE_SYSTEMD_ARCH_SUPPORTS=y
BR2_PACKAGE_SYSTEMD=y
BR2_PACKAGE_SYSTEMD_PSTORE=y
BR2_PACKAGE_SYSTEMD_HOSTNAMED=y
BR2_PACKAGE_SYSTEMD_HWDB=y
BR2_PACKAGE_SYSTEMD_LOGIND=y
BR2_PACKAGE_SYSTEMD_MACHINED=y
BR2_PACKAGE_SYSTEMD_MYHOSTNAME=y
BR2_PACKAGE_SYSTEMD_NETWORKD=y
BR2_PACKAGE_SYSTEMD_RESOLVED=y
BR2_PACKAGE_SYSTEMD_TIMEDATED=y
BR2_PACKAGE_SYSTEMD_TIMESYNCD=y
BR2_PACKAGE_SYSTEMD_TMPFILES=y
BR2_PACKAGE_SYSTEMD_VCONSOLE=y
BR2_PACKAGE_SYSTEMD_BOOTCHART_ARCH_SUPPORTS=y
BR2_PACKAGE_HOST_SYSTEMD=y

This is my linux-config.

CONFIG_DEFAULT_HOSTNAME="ucbvax"

#
# Boot options
#
CONFIG_CMDLINE="console=hvc0 earlycon=sbi"
CONFIG_CMDLINE_FORCE=y

#
# Partition Types
#
CONFIG_PARTITION_ADVANCED=y
CONFIG_MSDOS_PARTITION=y

#
# Generic Driver Options
#
CONFIG_DEVTMPFS_MOUNT=y

#
# File systems
#
CONFIG_EXT2_FS=y
CONFIG_EXT2_FS_XATTR=y
CONFIG_EXT2_FS_POSIX_ACL=y
CONFIG_EXT2_FS_SECURITY=y

#
# Compile-time checks and compiler options
#
CONFIG_DEBUG_INFO=y
CONFIG_DEBUG_FS=y
CONFIG_DEBUG_SECTION_MISMATCH=y
CONFIG_STACKTRACE=y

#
# Misc.
#
CONFIG_SPI=y
CONFIG_SPI_MEM=y
CONFIG_SPI_SIFIVE=y
CONFIG_SPI_SPIDEV=y
CONFIG_GPIOLIB=y
CONFIG_GPIO_SYSFS=y
CONFIG_GPIO_SIFIVE=y
CONFIG_MMC=y
CONFIG_MMC_SPI=y
CONFIG_EXT3_FS=y
CONFIG_HFSPLUS_FS=y
CONFIG_PANIC_ON_OOPS=y


CONFIG_CGROUP_CPUACCT=y
CONFIG_CGROUP_DEVICE=y
CONFIG_CGROUP_FREEZER=y
CONFIG_CPUSETS=y
CONFIG_MEMCG=y
CONFIG_VETH=y
CONFIG_BRIDGE=y


CONFIG_BRIDGE_NETFILTER=y
CONFIG_NETFILTER=y
CONFIG_NETFILTER_ADVANCED=y

CONFIG_IP_NF_FILTER=y
CONFIG_IP_NF_IPTABLES=y

CONFIG_IP_NF_TARGET_MASQUERADE=y

CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=y
CONFIG_NETFILTER_XTABLES=y

CONFIG_NETFILTER_XT_MATCH_CONNTRACK=y
CONFIG_NF_CONNTRACK=y

CONFIG_NETFILTER_XT_MATCH_IPVS=y
CONFIG_IP_VS=y

CONFIG_NETFILTER_XT_MARK=y
CONFIG_IP_NF_NAT=y
CONFIG_NF_NAT=y

CONFIG_VXLAN=y
CONFIG_BRIDGE_VLAN_FILTERING=y
CONFIG_VLAN_8021Q=y
CONFIG_IPVLAN=y
CONFIG_MACVLAN=y
CONFIG_DUMMY=y
CONFIG_NF_NAT_FTP=y
CONFIG_NF_CONNTRACK_FTP=y
CONFIG_NF_NAT_TFTP=y
CONFIG_NF_CONNTRACK_TFTP=y


Raphael Klink

unread,
Jul 20, 2023, 7:02:01 AM7/20/23
to FireSim

Hey,

i have the same problem.
I have done some searching and i was able to narrow it down.
The problem is with your new linux config.
If you overwrite their linux config, it will forget the nodisk option during image creation. The image still is called nodisk, but it is a disk image.
Best fix currently is simpyl to write your own br-base.json.

Greetings
Raphael
Reply all
Reply to author
Forward
0 new messages