Event Timeline
Comment Actions
If you do 'make toolchain' first to get the updated headers into the WORLDTMP sysroot you don't need this workaround. In general in the tree we assume you are building against an up-to-date sysroot rather than using this sort of approach. Note that to be fully correct you'd need to replace every machine/ include with "amd64/include" above which would then also break for arm64 support, etc.
Comment Actions
Ah, I was doing tinderbox with -DMAKE_JUST_WORLDS, which I guess skips toolchain bootstrap?
Comment Actions
Nope, even without -DMAKE_JUST_WORLDS it fails to find the new header:
_.amd64.amd64.buildworld:
/usr/src/usr.sbin/bhyve/bhyverun.c:763:3: error: implicit declaration of function 'vie_restart' is invalid in C99 [-Werror,-Wimplicit-function-declaration] vie_restart(vie); ^ /usr/src/usr.sbin/bhyve/bhyverun.c:766:9: error: implicit declaration of function 'vmm_decode_instruction' is invalid in C99 [-Werror,-Wimplicit-function-declaration] (void)vmm_decode_instruction(mode, cs_d, vie); ^ /usr/src/usr.sbin/bhyve/bhyverun.c:766:9: note: did you mean 'vm_restart_instruction'? /obj/usr/src/amd64.amd64/tmp/usr/include/machine/vmm.h:771:5: note: 'vm_restart_instruction' declared here int vm_restart_instruction(void *vm, int vcpuid); ^
Comment Actions
cat /obj/usr/src/amd64.amd64/usr.sbin/bhyve/.depend.bhyverun.o | grep vmm /usr/src/sys/amd64/vmm/intel/vmcs.h \ /obj/usr/src/amd64.amd64/tmp/usr/include/machine/vmm.h \ /obj/usr/src/amd64.amd64/tmp/usr/include/machine/vmm_dev.h \ /obj/usr/src/amd64.amd64/tmp/usr/include/vmmapi.h \
$ ls -lhtr /obj/usr/src/amd64.amd64/tmp/usr/include/machine/vmm.h /obj/usr/src/amd64.amd64/tmp/usr/include/machine/vmm_dev.h lrwxr-xr-x 1 conrad wheel 36 Jun 24 16:51 /obj/usr/src/amd64.amd64/tmp/usr/include/machine/vmm_dev.h -> ../../../sys/amd64/include/vmm_dev.h lrwxr-xr-x 1 conrad wheel 32 Jun 24 16:51 /obj/usr/src/amd64.amd64/tmp/usr/include/machine/vmm.h -> ../../../sys/amd64/include/vmm.h $ ls -lhtr /obj/usr/src/amd64.amd64/tmp/sys/amd64/include/vmm.h /obj/usr/src/amd64.amd64/tmp/sys/amd64/include/vmm_dev.h /obj/usr/src/amd64.amd64/tmp/usr/include/vmmapi.h -rwxr-xr-x 1 conrad wheel 11K May 15 08:54 /obj/usr/src/amd64.amd64/tmp/usr/include/vmmapi.h* -rw-r--r-- 1 conrad wheel 12K May 20 10:27 /obj/usr/src/amd64.amd64/tmp/sys/amd64/include/vmm_dev.h -rw-r--r-- 1 conrad wheel 23K Jun 24 16:51 /obj/usr/src/amd64.amd64/tmp/sys/amd64/include/vmm.h
So... the *symlinks* are current, but vmm_dev.h itself hasn't been updated yet.