[kvm-unit-tests] riscv build failure

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I'm building kvm-unit-tests as part of buildroot and hitting a build
failure. It looks like there's a missing dependency on
riscv/sbi-asm.S, as building that manually fixes the issue. Triggering
buildroot again (several times) doesn't resolve the issue so it
doesn't look like a race condition.

I can't reproduce with a normal cross compile on my machine. Buildroot
uses make -C, in case that makes a difference.

The build steps look like this:

bzcat /localdev/jms/buildroot/dl/kvm-unit-tests/kvm-unit-tests-v2025-06-05.tar.bz2
| /localdev/jms/buildroot/output-riscv-rvv/host/bin/tar
--strip-components=1 -C
/localdev/jms/buildroot/output-riscv-rvv/build/kvm-unit-tests-2025-06-05
  -xf -
cd /localdev/jms/buildroot/output-riscv-rvv/build/kvm-unit-tests-2025-06-05
&& ./configure --disable-werror --arch="riscv64" --processor=""
--endian="little"
--cross-prefix="/localdev/jms/buildroot/output-riscv-rvv/host/bin/riscv64-buildroot-linux-gnu-"
GIT_DIR=. PATH="/localdev/jms/buildroot/output-riscv-rvv/host/bin:/localdev/jms/buildroot/output-riscv-rvv/host/sbin:/home/jms/.local/bin:/home/jms/bin:/home/jms/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin"
/usr/bin/make -j385  -C
/localdev/jms/buildroot/output-riscv-rvv/build/kvm-unit-tests-2025-06-05
standalone

The failing line, with the full paths trimmed for readability:

riscv64-buildroot-linux-gnu-ld -melf64lriscv -nostdlib  -no-pie -z
noexecstack -pie -n -z notext -o riscv/sbi.elf -T riscv/flat.lds \
    riscv/sbi.o riscv/cstart.o riscv/sbi.aux.o lib/libcflat.a
lib/libfdt/libfdt.a
riscv64-buildroot-linux-gnu-ld: riscv/sbi.o: in function `cpumask_test_cpu':
lib/cpumask.h:35:(.text+0xd8a): undefined reference to
`sbi_hsm_check_non_retentive_suspend'
riscv64-buildroot-linux-gnu-ld: riscv/sbi.o: in function
`hart_suspend_and_wait_ipi':
riscv/sbi.c:591:(.text+0xde2): undefined reference to
`sbi_hsm_check_non_retentive_suspend'
riscv64-buildroot-linux-gnu-ld: riscv/sbi.o: in function `cpumask_test_cpu':
lib/cpumask.h:36:(.text+0x1064): undefined reference to `sbi_susp_resume'
/riscv64-buildroot-linux-gnu-ld: riscv/sbi.o: in function `susp_one_prep':
riscv/sbi.c:1434:(.text+0x1796): undefined reference to
`sbi_hsm_check_hart_start'
riscv64-buildroot-linux-gnu-ld: riscv/sbi.o: in function `check_dbcn':
/riscv/sbi.c:1247:(.text.startup+0x9fe): undefined reference to `check_sse'
riscv64-buildroot-linux-gnu-ld:
/localdev/jms/buildroot/output-riscv-rvv/build/kvm-unit-tests-2025-06-05/riscv/sbi.c:1247:(.text.startup+0xa02):
undefined reference to `check_fwft'
make[2]: *** [riscv/Makefile:131: riscv/sbi.elf] Error 1

The full build log is at
https://ozlabs.org/~joel/tmp/buildroot-kvm-unit-tests-build-log.txt

I was able to reproduce with the 2025-07-31 tag, which is the same as
today's master branch.

Cheers,

Joel





[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux