Arch Linux Image for VisionFive 2

appears to be patch-12-13

linux-cwt-starfive-vf2/src on î‚ 6.12 [!]
❯ bat patch-6.12.12-13 | grep timers
@@ -48,7 +48,7 @@ void vmx_migrate_timers(struct kvm_vcpu *vcpu);

    • can be changed and scan timers are only for inactive
  • timersub(&tv_start, &tv_end, &tv_diff);
  • timersub(&tv_end, &tv_start, &tv_diff);
    diff --git a/tools/testing/selftests/timers/clocksource-switch.c b/tools/testing/selftests/timers/clocksource-switch.c
    — a/tools/testing/selftests/timers/clocksource-switch.c
    +++ b/tools/testing/selftests/timers/clocksource-switch.c

linux-cwt-starfive-vf2/src on î‚ 6.12 [!]

actually it is here … the stoppage

I use ‘makepkg --nobuild’ and sometimes --skipinteg to check changes…

patching file tools/power/x86/turbostat/turbostat.c
patching file tools/testing/ktest/ktest.pl
patching file tools/testing/selftests/bpf/Makefile
patching file tools/testing/selftests/bpf/prog_tests/btf_distill.c
patching file tools/testing/selftests/bpf/prog_tests/fill_link_info.c
patching file tools/testing/selftests/bpf/prog_tests/tailcalls.c
patching file tools/testing/selftests/bpf/progs/tc_bpf2bpf.c
patching file tools/testing/selftests/bpf/progs/test_fill_link_info.c
patching file tools/testing/selftests/bpf/test_tc_tunnel.sh
patching file tools/testing/selftests/bpf/xdp_hw_metadata.c
patching file tools/testing/selftests/drivers/net/netdevsim/udp_tunnel_nic.sh
patching file tools/testing/selftests/ftrace/test.d/00basic/mount_options.tc
patching file tools/testing/selftests/kselftest/ktap_helpers.sh
patching file tools/testing/selftests/kselftest_harness.h
patching file tools/testing/selftests/landlock/Makefile
patching file tools/testing/selftests/landlock/fs_test.c
patching file tools/testing/selftests/net/lib/Makefile
patching file tools/testing/selftests/net/mptcp/Makefile
patching file tools/testing/selftests/net/openvswitch/Makefile
patching file tools/testing/selftests/powerpc/benchmarks/gettimeofday.c
patching file tools/testing/selftests/rseq/rseq.c
patching file tools/testing/selftests/rseq/rseq.h
patching file tools/testing/selftests/timers/clocksource-switch.c
==> ERROR: A failure occurred in prepare().
Aborting…

Hello, any chance you could add support for the Milk-V Mars? I think it’s just a matter of adding the correct DTS to the kernel.

Excellent work again, Sir.

I am working on compiling on the actual VF2 right now.

  1. I had to install a dependency which was not required before “ccache”

  2. and am having one stoppage in the PKGBUILD at one of the $src/test/xxx packages…

will continue to work on it…

I have had exclude all patches after patch-11-12 to make the build system not error on the makepkg --nobuild --skipinteg ( because I did not remove the crc checks ) and am about to try the full compile.

My current kernel is your previous 6.6 build and I have only added a SCSI_transport_FC flag and a qla2xxx driver module for a fibre channel card i sometimes use via pci to connect to a clusterFS.

will let you know.

1 Like

eh? ccache is not required, but if the build script (PKGBUILD) found it, it will try to use it, so when you rebuild it again after make some changes, it will finish a lot faster.

This is weird, can you try sudo pacman -Syu before makepkg? I built it on my VF2 many times before made a release, and they were all pass. How about justmakepkg -o?

Just so you know, the moderators are taking their sweet time so I may have to switch to github to message you.

I did not update anything before trying. I need to make image backups before I try to -U the zst files. on my good build … or use a clean cwt-23 image and test from that to the new one.

thanks again for the time and work…

Michael

PKGBUILD file issue ?

I use bash and had an issue with CCACHE=$(which ccache 2>/dev/null) not working properly for some reason. The command worked outside of the script, but would not work while running it. This was resolved by installing the package, however to make it work for me WITHOUT installing, as per the 'IF THEN" paragraph, I had to make the following adjustments. I did use POSIX compliant commands to make sure it would be compatible with everything. I did not DIFF the two files… sorry. here below is the section with minor change.

prepare() section …Preformatted text


if command -v ccache 2>&1 >/dev/null; then 

      CCACHE=$(which ccache 2>/dev/null)
       echo $CCACHE  # too make sure
       gcc="${CCACHE} ${CROSS_COMPILE:-}gcc"
       

     else

    echo " ........ccache not installed ! ........................"   
    gcc="${CROSS_COMPILE:-}gcc"

  fi
1 Like

6 and a half hours later …


1 Like

I will add your solution to the PKGBUILD, thanks!

1 Like

I tried booting but the kernel crashes with:
modprobe[76]: unhandled signal 4 code 0x1 at 0x0000003fb27080dc in ld-linux-riscv64-lp64d.so.1[160dc,3fb26f2000+23000

hello. So I have found two refences to this package …

  1. it is the risc-v implemetation of ld.so … which is a toolchain loader of some type…

  2. and another reference to cross compiling errors.


To start with, barring any hardware errors, RAM errors, bad bits, et cet. … I would have to know if the kernel was cross compiled, and a bit more about the environment it was made on. GCC version may be an issues also. Is it a fresh install from the *img file to an SD/NVME card or an upgrade with CWT’s updater script that builds and installs the updated kernel/headers and the like?

ciao

Do you have this problem on Milk-V Mars? Do you know which module it wanted to load?

Yes on Mars. My previous reply is pending. Will try to see the trace for the module.

Hello. Fresh install to SD card from the latest img but I am on a Milk-V Mars.
However, I think I changed the u-boot in SPI flash to the mainline one to be able to boot Ubuntu.

Hello gentlemen. I do not have a MARS board. I have been trying to use all types of QEMU images and the associated tools to make images for different systems. I will look into the nuances of the MARS board.

It could just be a compiler flag that needs to be set different/added/removed also…

the more simple the better.

I do have a MangoPiPro however, but have been working on the StarFive stuff more than the Nezha D1 processor.

The older Armbian build is what runs on the MangoPi currently.

hi, cwt,
ArchLinux Image for VisionFive 2 cwt24 Release, Will it support the GRUB boot system in the future?
https://wiki.debian.org/InstallingDebianOn/StarFive/VisionFiveV2

1 Like