emulators/virtualbox-ose-kmod fails to biuld on 14.0-CURRENT 1400079
Date: Sat, 11 Feb 2023 07:03:55 UTC
Hi, I get the following error when poudriere building emulators/virtualbox-ose-kmod on 14.0-CURRENT 1400079: cc -O2 -pipe -fno-strict-aliasing -DRT_OS_FREEBSD -DIN_RING0 -DIN_RT_R0 -DIN_SUP_R0 -DSUPDRV_WITH_RELEASE_LOGGER -DVBOX -DRT_WITH_VBOX -w -DVBOX_WITH_HARDENING -DVBOX_WITH_64_BITS_GUESTS -DRT_ARCH_AMD64 -Werror -D_KERNEL -DKLD_MODULE -nostdinc -Iinclude -I. -Ir0drv -include /wrkdirs/usr/ports/emulators/virtualbox-ose-kmod/work/VirtualBox-6.1.36/out/freebsd.amd64/release/bin /src/vboxdrv/opt_global.h -I. -I/usr/src/sys -I/usr/src/sys/contrib/ck/include -fno-common -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fdebug-prefix-map=./machine=/usr/src/sys/amd64/include -fdebug-prefix-map=./x86=/usr/src/sys/x86/include -fdebug-prefix-map=./i386=/usr/src/sys/i386/include -MD -MF.depend.SUPDrv-freebsd.o -MTSUPDrv-freebsd.o -mcmodel=kernel -mn o-red-zone -mno-mmx -mno-sse -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -fwrapv -fstack-protector -Wall -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wcast-qual -Wundef -Wno-pointer-sign -D__printf__=__freebsd_kprintf__ -Wmissing-include-dirs -fdiagnostics-show-option -Wno-unknown-pragmas -Wno-error=tautological-compare -Wno-error =empty-body -Wno-error=parentheses-equality -Wno-error=unused-function -Wno-error=pointer-sign -Wno-error=shift-negative-value -Wno-address-of-packed-member -Wno-error=array-parameter -Wno-error=deprecated-non-prototype -Wno-error=strict-prototypes -Wno-error=unused-but-set-variable -Wno-format-zero-length -mno-aes -mno-avx -std=iso9899:1999 -c /wrkdirs/usr/ports/emulators/ virtualbox-ose-kmod/work/VirtualBox-6.1.36/out/freebsd.amd64/release/bin/src/vboxdrv/freebsd/SUPDrv-freebsd.c -o SUPDrv-freebsd.o /wrkdirs/usr/ports/emulators/virtualbox-ose-kmod/work/VirtualBox-6.1.36/out/freebsd.amd64/release/bin/src/vboxdrv/freebsd/SUPDrv-freebsd.c:433:50: error: incompatible pointer to integer conversion passing 'void *' to parameter of type 'RTR3PTR' (aka 'unsigned long') [-Wint-conversion] if (RT_FAILURE(RTR0MemUserCopyFrom(&Hdr, pvUser, sizeof(Hdr)))) ^~~~~~ include/iprt/errcore.h:99:58: note: expanded from macro 'RT_FAILURE' #define RT_FAILURE(rc) ( RT_UNLIKELY(!RT_SUCCESS_NP(rc)) ) ^~ include/iprt/errcore.h:80:38: note: expanded from macro 'RT_SUCCESS_NP' # define RT_SUCCESS_NP(rc) ( (int)(rc) >= VINF_SUCCESS ) ^~ include/iprt/cdefs.h:1826:53: note: expanded from macro 'RT_UNLIKELY' # define RT_UNLIKELY(expr) __builtin_expect(!!(expr), 0) ^~~~ include/iprt/mem.h:756:56: note: passing argument to parameter 'R3PtrSrc' here RTR0DECL(int) RTR0MemUserCopyFrom(void *pvDst, RTR3PTR R3PtrSrc, size_t cb); ^ /wrkdirs/usr/ports/emulators/virtualbox-ose-kmod/work/VirtualBox-6.1.36/out/freebsd.amd64/release/bin/src/vboxdrv/freebsd/SUPDrv-freebsd.c:461:50: error: incompatible pointer to integer conversion passing 'void *' to parameter of type 'RTR3PTR' (aka 'unsigned long') [-Wint-conversion] if (RT_FAILURE(RTR0MemUserCopyFrom(pHdr, pvUser, Hdr.cbIn))) ^~~~~~ include/iprt/errcore.h:99:58: note: expanded from macro 'RT_FAILURE' #define RT_FAILURE(rc) ( RT_UNLIKELY(!RT_SUCCESS_NP(rc)) ) ^~ include/iprt/errcore.h:80:38: note: expanded from macro 'RT_SUCCESS_NP' # define RT_SUCCESS_NP(rc) ( (int)(rc) >= VINF_SUCCESS ) ^~ include/iprt/cdefs.h:1826:53: note: expanded from macro 'RT_UNLIKELY' # define RT_UNLIKELY(expr) __builtin_expect(!!(expr), 0) ^~~~ include/iprt/mem.h:756:56: note: passing argument to parameter 'R3PtrSrc' here RTR0DECL(int) RTR0MemUserCopyFrom(void *pvDst, RTR3PTR R3PtrSrc, size_t cb); ^ /wrkdirs/usr/ports/emulators/virtualbox-ose-kmod/work/VirtualBox-6.1.36/out/freebsd.amd64/release/bin/src/vboxdrv/freebsd/SUPDrv-freebsd.c:494:46: error: incompatible pointer to integer conversion passing 'void *' to parameter of type 'RTR3PTR' (aka 'unsigned long') [-Wint-conversion] if (RT_FAILURE(RTR0MemUserCopyTo(pvUser, pHdr, cbOut))) ^~~~~~ include/iprt/errcore.h:99:58: note: expanded from macro 'RT_FAILURE' #define RT_FAILURE(rc) ( RT_UNLIKELY(!RT_SUCCESS_NP(rc)) ) ^~ include/iprt/errcore.h:80:38: note: expanded from macro 'RT_SUCCESS_NP' # define RT_SUCCESS_NP(rc) ( (int)(rc) >= VINF_SUCCESS ) ^~ include/iprt/cdefs.h:1826:53: note: expanded from macro 'RT_UNLIKELY' # define RT_UNLIKELY(expr) __builtin_expect(!!(expr), 0) ^~~~ include/iprt/mem.h:768:41: note: passing argument to parameter 'R3PtrDst' here RTR0DECL(int) RTR0MemUserCopyTo(RTR3PTR R3PtrDst, void const *pvSrc, size_t cb); ^ 3 errors generated. *** Error code 1 Stop. make[2]: stopped in /wrkdirs/usr/ports/emulators/virtualbox-ose-kmod/work/VirtualBox-6.1.36/out/freebsd.amd64/release/bin/src/vboxdrv *** Error code 1 Stop. make[1]: stopped in /wrkdirs/usr/ports/emulators/virtualbox-ose-kmod/work/VirtualBox-6.1.36/out/freebsd.amd64/release/bin/src *** Error code 1 Stop. make: stopped in /usr/ports/emulators/virtualbox-ose-kmod Is this known? Thank you. -- José Pérez