Re: Buildkernel fails in /usr/obj/usr/src/arm.armv7/sys/GENERIC/vchiq_shim.o
Date: Sat, 01 Nov 2025 18:26:37 UTC
On Nov 1, 2025, at 10:45, Mark Millard <marklmi@yahoo.com> wrote: > On Nov 1, 2025, at 10:22, Adrian Chadd <adrian@freebsd.org> wrote: > >> Here's my suggested solution: >> >> === >> diff --git a/sys/contrib/vchiq/interface/vchiq_arm/vchiq_2835_arm.c b/sys/contrib/vchiq/interface/vchiq_arm/vchiq_2835_arm.c >> index 96c3a0db8aa5..7e105a6b3b77 100644 >> --- a/sys/contrib/vchiq/interface/vchiq_arm/vchiq_2835_arm.c >> +++ b/sys/contrib/vchiq/interface/vchiq_arm/vchiq_2835_arm.c >> @@ -628,7 +628,9 @@ free_pagelist(BULKINFO_T *bi, int actual) >> pagelist = bi->pagelist; >> >> vchiq_log_trace(vchiq_arm_log_level, >> - "free_pagelist - %zx, %d (%u bytes @%p)", (size_t)pagelist, actual, pagelist->length, bi->buf); >> + "free_pagelist - %zx, %d (%lu bytes @%p)", >> + (size_t)pagelist, (int)actual, (unsigned long)pagelist->length, >> + bi->buf); >> >> num_pages = >> (pagelist->length + pagelist->offset + PAGE_SIZE - 1) / >> === >> >> The code /is/ being compiled on my arm64 and armv7 builds, I verified this by using #error in this source file. But the format strings aren't eliciting a type violation when I cross compile. > > The CI builds are on the likes of butler4.nyi.freebsd.org which > are amd64 as far as I know: also cross builds. > > The CI build infrastructure may be public enough to check for if > anything special is specified for those builds. For example, I do > not know if they use /dev/null or empty files relative to the > likes of environment variables: > > __MAKE_CONF > SRCCONF > SRC_ENV_CONF > > or what the related file content might be like otherwise. In: https://ci.freebsd.org/job/FreeBSD-main-armv7-build/26181/consoleFull I see: . . . export 'MAKEOBJDIRPREFIX=/workspace/obj' rm -fr /workspace/obj . . . sudo make -j 12 -DWITHOUT_CLEAN buildworld 'TARGET=arm' 'TARGET_ARCH=armv7' '__MAKE_CONF=/workspace/freebsd-ci/jobs/FreeBSD-main-armv7-build/make.conf' 'SRCCONF=/dev/null' . . . sudo make -j 12 -DWITHOUT_CLEAN buildkernel 'TARGET=arm' 'TARGET_ARCH=armv7' '__MAKE_CONF=/workspace/freebsd-ci/jobs/FreeBSD-main-armv7-build/make.conf' 'SRCCONF=/dev/null' . . . In: https://github.com/freebsd/freebsd-ci/blob/main/jobs/FreeBSD-main-armv7-build/make.conf I see just: QUOTE KERNCONF=GENERIC GENERIC-MMCCAM END QUOTE I do not see anything explicit related to what SRC_ENV_CONF is for binding to, so a default context for that binding. === Mark Millard marklmi at yahoo.com