Upstream is EOLng VirtualBox 6.x in December <URL:https://www.virtualbox.org/wiki/Downloads> VirtualBox 7.x includes several enhancements <URL:https://www.virtualbox.org/wiki/Changelog> John groenveld@acm.org
As discussed in bug #266907 "Devices: The EHCI and XHCI USB controller devices are now part of the open source base package" John groenveld@acm.org
Triage: * aim to make a cross-reference from bug 266907 * reuse the 'see also' field for a full URL with the same bug report number * begin the summary line with emulators/virtualbox-ose * adapted slightly, as koobs@ did for 266907 on 2022-10-12 * set the assignee that would have been automated by beginning with emulators/virtualbox-ose * keyword … and thank you :-)
My bug-271146 branch in GitHub <https://github.com/grahamperrin/freebsd-ports/tree/bug-271146> is a bare-bones beginning, two ports alone (virtualbox-ose, virtualbox-ose-kmod), build of which I'll test first in a 1400089 amd64 jail. If it does build and install, in any host environment, testers should take the usual precautions before proceeding with changes to any guest machine: * have verifiably good backups of all relevant guest data * and so on. Hint: .diff at <https://github.com/freebsd/freebsd-ports/compare/main...grahamperrin:freebsd-ports:bug-271146.diff>
Re: comment 3 Bare-bones was wishful thinking :-) =======================<phase: patch >============================ ===== env: DEVELOPER_MODE=yes DEVELOPER=1 STRICT_DEPENDS=yes USER=root UID=0 GID=0 ===> Patching for virtualbox-ose-kmod-7.0.8 ===> Applying FreeBSD patches for virtualbox-ose-kmod-7.0.8 from /usr/ports/emulators/virtualbox-ose-kmod/../virtualbox-ose/files 15 out of 21 hunks failed--saving rejects to Config.kmk.rej ===> FAILED Applying FreeBSD patch-Config.kmk ===> FAILED to apply cleanly FreeBSD patch(es) patch-Config.kmk *** Error code 1
(In reply to Graham Perrin from comment #4) Hello Graham, When patches doesn't apply we need to check if it was applied upstream or just adapt it to new code, e.g. vi files/patch-src-A work/portname/src/A and check it for differences. When done, make makepatch. For quick check you can disable patches renaming files -> files.off Cheers
VirtualBox 7.0.12 (released October 17 2023)
Virtualbox.org indicates 6.x goes end-of-life in December 2023
(In reply to Brian Roper from comment #7) > Virtualbox.org indicates 6.x goes end-of-life in December 2023 6.1.50 just released: https://www.virtualbox.org/wiki/Changelog-6.1#v50 I created a patch, testing the new version on 2 of my servers now and I'll create review (https://reviews.freebsd.org) tomorrow. 7.0.14 released too: https://www.virtualbox.org/wiki/Changelog-7.0#v14
Oracle support for VirtualBox 6.1 has ended. See https://www.virtualbox.org/wiki/Download_Old_Builds
(In reply to Brian Roper from comment #9) > Oracle support for VirtualBox 6.1 has ended. Thanks, that overlaps with 2023 bug 274270, >> 5.1.38 is more than five years old, support for Oracle VM VirtualBox >> 5.x ended more than three years ago.
(In reply to Vladimir Druzenko from comment #8) > 7.0.14 <https://www.virtualbox.org/wiki/Changelog-7.0#v16> > VirtualBox 7.0.16 (released April 16 2024)
(In reply to Graham Perrin from comment #11) > ATTENTION: PLEASE REFRAIN FROM UPGRADING TO 7.0.16 FOR NOW. THIS RELEASE HAS AN ISSUE WHICH MIGHT CAUSE HOST OS CRASH WHEN VM IS CONFIGURED TO USE BRIDGED OR HOST-ONLY NETWORKING. WE WILL SEND AN ANNOUNCEMENT TO MAILING LISTS WHEN FIX WILL BE AVAILABLE FOR DOWNLOAD. https://www.virtualbox.org/ I started updating the port, but then I read this and stopped.
Looks like 7.0.18 was released on 5/3/24. I'd be happy to help test if someone could point me to a ports src tree to build from.
(In reply to Roger Fujii from comment #13) Yes, I know. The sources have changed a lot - our patches need significant work: 89 patches with 7811 lines total. Is anyone else ready to take on updating some of our patches? If I do it alone, it could take weeks, or even months.
I originally tried applying the v6.x patches to 7 and realized there is a lot of files that required mods, so I figured someone must have already started this, so just waited. I'm happy to step up on this, but don't want to do all this work and then being told "oh, we already did that". If there is no current v7 patches, I can re-start the effort I started before. Just trying to efficiently use time/resources.
(In reply to Roger Fujii from comment #15) If you can, please start working on updating to 7.x. Nobody work on it now. :-(
(In reply to Graham Perrin from comment #3) It doesn't look like this builds.
I think we should probably drop VirtualBox support in ports and try to get CSM support into bhyve. That should allow users of legacy Windows to be able to P2V. Otherwise the only option is a fresh new image, which is not a P2V but a fresh new image.
It would be nice to have VB 7.X working since it has other things such as emulated TPM and other things. However, someone has to work on it. Fortunately, my need for TPM with Windows is reduced now so I can use Bhyve now. I was able to get VB 7.X working by running Linux in VB on FreeBSD and then VB 7.X inside that Linux guest.
(In reply to Doug Ambrisko from comment #19) Hello Doug, > It would be nice to have VB 7.X working since it has other things such as > emulated TPM and other things. TPM is suported on bhyve and I use it to run Win11.
(In reply to Cy Schubert from comment #18) Also need: 1) savestate/restore without manual rebuild the world; 2) GUI (Qt); 3) WebGUI like phpvirtualbox; 4) support run with different disk formats like VDI, VMDK and etc without converting; 5) support work on CPU with VT-x without UG (Unrestricted Guest) - Nehalems, Penryns, Conroes, some lowend mobile/atom based; 6) support boot in BIOS mode without UEFI; 7) support hotswap passthrough of single USB device; . . .
(In reply to Vladimir Druzenko from comment #21) OK, I get it. We need to rope someone in to update this port. And no, I'm not volunteering. I'm already late on the MIT KRB5 project and I don't need yet another shiny object to distract me.
(In reply to Vladimir Druzenko from comment #21) ...and some people (myself too) have dozens of VMs already created, tuned and used for development everyday. As for me - dropping VirtualBox will be a disaster. Can we ask FreeBSD foundation to sponsor the update and future support of VirtualBox? ;)
(In reply to Peter TKATCHENKO from comment #23) I too will suffer without VirtualBox. Might crowdsourced funding be an option ?
Indeed, it is not just the ability to run virtual VMs. I guess I am not the only one who uses it for running networking labs which consist of dozens of VMs with different NIC modes. I would miss it dearly. Actually, I would need to give up FreeBSD at some important parts of my workflow and replace it with something else that offers Virtualbox. Let me know if I can help somehow.
I'll take this to the FreeBSD Laptop and Desktop Working Group (LDWG). Re: <https://www.virtualbox.org/wiki/Changelog-7.1>, I suggest updating the summary line here: - 7.1.4 was released a month ago. Thanks
(In reply to Marko Cupać from comment #25) It's easy to import .ova files from $JOB and from vendors. .ova files are the industry standard for distributing virtual machines. VMware supports .ova, as does VBox. Probably would be nice if we build some kind of container framework (like Solaris containers use zones) that would define virtual machines, that we can import .ova into some bhyve infrastructure like we can with VBox. Until then VBox is our only vehicle to accept and use .ova files to import and export virtual machines.
In good news... I now have an updated port ready for virtualbox-ose-kmod; it compiles and I can kldload vboxdrv successfully. That's not to say it'll work flawlessly but I might be one step further. I'm stuck with the virtualbox-ose port at the moment. There's something fishy going on with the kmake configuration. I'm getting ===> Building for virtualbox-ose-7.0.22_1 cd /usr/ports/emulators/virtualbox-ose/work/VirtualBox-7.0.22 && /bin/sh -c '. /usr/ports/emulators/virtualbox-ose/work/VirtualBox-7.0.22/env.sh && /usr/bin/env OPENSSLBASE=/usr OPENSSLDIR=/etc/ssl OPENSSLINC=/usr/include OPENSSLLIB=/usr/lib QT_SELECT=qt5 QMAKEMODULES="/usr/ports/emulators/virtualbox-ose/work/VirtualBox-7.0.22/mkspecs/modules:/usr/local/lib/qt5/mkspecs/modules" SDL_CONFIG=/usr/local/bin/sdl-config XDG_DATA_HOME=/usr/ports/emulators/virtualbox-ose/work XDG_CONFIG_HOME=/usr/ports/emulators/virtualbox-ose/work XDG_CACHE_HOME=/usr/ports/emulators/virtualbox-ose/work/.cache HOME=/usr/ports/emulators/virtualbox-ose/work PATH=/usr/ports/emulators/virtualbox-ose/work/.bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/root/bin PKG_CONFIG_LIBDIR=/usr/ports/emulators/virtualbox-ose/work/.pkgconfig:/usr/local/libdata/pkgconfig:/usr/local/share/pkgconfig:/usr/libdata/pkgconfig MK_DEBUG_FILES=no MK_KERNEL_SYMBOLS=no SHELL=/bin/sh NO_LINT=YES PREFIX=/usr/local LOCALBASE=/usr/local CC="clang14" CFLAGS="-O2 -pipe -DLIBICONV_PLUG -fstack-protector-strong -fno-strict-aliasing " CPP="cpp" CPPFLAGS="-DLIBICONV_PLUG" LDFLAGS=" -Wl,--undefined-version -fstack-protector-strong " LIBS="" CXX="clang++14" CXXFLAGS="-O2 -pipe -DLIBICONV_PLUG -fstack-protector-strong -fno-strict-aliasing -DLIBICONV_PLUG " BSD_INSTALL_PROGRAM="install -s -m 555" BSD_INSTALL_LIB="install -s -m 0644" BSD_INSTALL_SCRIPT="install -m 555" BSD_INSTALL_DATA="install -m 0644" BSD_INSTALL_MAN="install -m 444" VBOX_LIBPATH_X11=/usr/local VBOX_FREEBSD_SRC=/usr/src/sys /usr/local/bin/kmk -j8' Config.kmk:3511: /usr/ports/emulators/virtualbox-ose/work/VirtualBox-7.0.22/out/freebsd.amd64/release/DynamicConfig.kmk: No such file or directory Config.kmk:9063: /usr/ports/emulators/virtualbox-ose/work/VirtualBox-7.0.22/out/freebsd.amd64/release/revision.kmk: No such file or directory /usr/ports/emulators/virtualbox-ose/work/VirtualBox-7.0.22/src/VBox/Main/webservice/Makefile.kmk:959: *** missing `endif'. Stop. If I add that endif, I'm getting an error that the endif is misplaced. I'll keep digging - if anyone has any hints, I'd appreciate it.
Quick update: I managed to fix that and I'm now at a point where some includes break because of PATH issues. There are also some missing definitions, where the code asks to define whether to run in RING0/RING1/RC or similar. I hope to post everything I've got onto my Github repo, so anyone interested can pick it up and continue where I've left. Due to other engagements, I probably won't be able to look into this for a few weeks.
VirtualBox 7.0.22 build on 14.1-RELEASE-p6 with llvm18-18.1.8_2 I opted for 7.0.22 for it seems to be "RELEASE" while 7.1.4 is "CURRENT" in my understanding. My plan is to get to a working port in 3 steps: -step 1: compile and stage (accomplished), -step 2: identify and incorporate necessary/useful patches from 6.1.50, -step 3: create a port. While I deem step 1 being accomplished (source compiled and staged) I have not tried to run the binary yet. All I have done so far is to fix compile-time and linker errors using a minimal set of patches from 6.1.50 and my brains+fingers so my simulated ports environment got it compiled and installed into stage. I'm happy with that for today. During the next free hours I'll try to install and run the thing. Following that: step 2. Here I'd like to ask if there is anybody with enough insight into FreeBSD who would like to help me identify patches from 6.1.50 which should be incorporated into 7.0.22. regards Frank
(In reply to Cy Schubert from comment #18) Please, no; this report is specific to VirtualBox. bhyve discussions galore are elsewhere.
(In reply to Frank Reisert from comment #30) > … I opted for 7.0.22 for it seems to be "RELEASE" while > … 7.1.4 is "CURRENT" in my understanding. Please opt for superior 7.1.4. Both versions are: * release quality * actively maintained. If we make 7.0.⋯ the norm – without certainty that 7.1.⋯ will be ported in good time – then a hole into which we dig ourselves may arrive far too soon. Consider <https://www.virtualbox.org/wiki/Download_Old_Builds>: * support for 6.0 ended three-and-a-half years earlier than the end for 6.1. In any case, thanks to everyone who helps FreeBSD to get back on track with VirtualBox.
(In reply to Graham Perrin from comment #32) Agreed.
Ok, will do so. regards Frank
Created attachment 255799 [details] preliminary port for further development virtualbox-ose 7.0.22 update on my progress Base OS: 14.2-RELEASE VirtualBox: 7.0.22 LLVM: 18.1.8_2 Status: builds, kmods load and _do_not_ crash system, virtualbox starts, VM created, VM cannot be started (VERR_ACCESS_DENIED) I've hit a roadblock with VirtualBox 7.1.4 which is now based on QT6. Build stopped with tons of .moc-files missing of which I have no idea how they would be created. So I put my efforts on 7.0.22 again. So far I have adopted all usable patches from 6.1.50. Anybody who is able to do so, please check the newly created patches from 7.0.22 tree, especially the Ring-0 stuff. In Makefile section "do-build:" I needed to remove the sourcing of ${WRKSRC}/env.sh which is created by ${WRKSRC}/configure. With env.sh sourced header files in ${WRKSRC}/include were not found. And I needed to remove "VBOX_PROGS+= VBoxSDL" for it wouldn't be built and so block the install. I have installed 7.0.22-ose-kmods and ose on a testbed. I have started VirtualBox 7.0.22 and created a VM. I was not able to run the VM, error: VERR_ACCESS_DENIED. I will try to fix this issue but I have very little hopes that I'll succeed for I'm not a software devolper but just a random guy who has a basic understanding of programming. Anybody who might be able please step in here. regards -Frank
Created attachment 255800 [details] preliminary port for further development virtualbox-ose-kmod 7.0.22
(In reply to Frank Reisert from comment #35) @Frank Reisert, Please, try to start VirtualBox with sudo (as root) and try to start a VM. IMHO if you can do it - the problem could be out of the code.
(In reply to Peter TKATCHENKO from comment #37) As root I get: Failed to load R0 module /usr/local/lib/virtualbox/VMMR0.r0: RTLdrGetBits failed (VERR_SYMBOL_VALUE_TOO_BIG). Result Code: NS_ERROR_FAILURE (0X800004005) Component: ConsoleWrap Interface: IConsole {6ac83d89-6ee7-4e33-8ae6-b257b2e81be8}
(In reply to Frank Reisert from comment #38) > Failed to load R0 module /usr/local/lib/virtualbox/VMMR0.r0 Do you get this error on start of VirtualBox or on start of VM?
(In reply to Peter TKATCHENKO from comment #39) I get this error on start of VM (VBox is running).
Maybe VBox.log of the failed start helps: 00:00:01.209224 VirtualBox VM 7.0.22 r165102 freebsd.amd64 (Dec 12 2024 07:18:44) release log 00:00:01.209227 Log opened 2024-12-12T09:57:11.556625000Z 00:00:01.209229 Build Type: release 00:00:01.209238 OS Product: FreeBSD 00:00:01.209243 OS Release: 14.2-RELEASE 00:00:01.209248 OS Version: FreeBSD 14.2-RELEASE releng/14.2-n269506-c8918d6c7412 GENERIC 00:00:01.209253 Firmware type: failed - VERR_NOT_SUPPORTED 00:00:01.209315 Host RAM: 4061MB (3.9GB) total, 3261MB (3.1GB) available 00:00:01.209321 Executable: /usr/local/lib/virtualbox/VirtualBoxVM 00:00:01.209322 Process ID: 1928 00:00:01.209324 Package type: BSD_64BITS_GENERIC (OSE) 00:00:01.212061 Installed Extension Packs: 00:00:01.212068 None installed! 00:00:01.213840 Console: Machine state changed to 'Starting' 00:00:01.215971 Qt version: 5.15.16 00:00:01.215978 X11 Window Manager code: 0 00:00:01.222510 SUP: RTLdrGetBits failed for VMMR0.r0 (/usr/local/lib/virtualbox/VMMR0.r0). rc=VERR_SYMBOL_VALUE_TOO_BIG 00:00:01.222542 PDMLdr: pdmR3LoadR0U: pszName="VMMR0.r0" rc=VERR_SYMBOL_VALUE_TOO_BIG szErr="RTLdrGetBits failed" 00:00:01.222549 VMSetError: /wrkdirs/overlays/overlay_vbox_7022/emulators/virtualbox-ose/work/VirtualBox-7.0.22/src/VBox/VMM/VMMR3/PDMLdr.cpp(750) int pdmR3LoadR0U(PUVM, const char *, const char *, const char *); rc=VERR_SYMBOL_VALUE_TOO_BIG 00:00:01.222552 VMSetError: Failed to load R0 module /usr/local/lib/virtualbox/VMMR0.r0: RTLdrGetBits failed 00:00:01.222566 VMSetError: /wrkdirs/overlays/overlay_vbox_7022/emulators/virtualbox-ose/work/VirtualBox-7.0.22/src/VBox/VMM/VMMR3/VM.cpp(590) int vmR3CreateU(PUVM, uint32_t, PFNCFGMCONSTRUCTOR, void *); rc=VERR_SYMBOL_VALUE_TOO_BIG 00:00:01.222569 VMSetError: Failed to load VMMR0.r0 00:00:01.222881 ERROR [COM]: aRC=NS_ERROR_FAILURE (0x80004005) aIID={6ac83d89-6ee7-4e33-8ae6-b257b2e81be8} aComponent={ConsoleWrap} aText={Failed to load R0 module /usr/local/lib/virtualbox/VMMR0.r0: RTLdrGetBits failed (VERR_SYMBOL_VALUE_TOO_BIG). 00:00:01.222888 Failed to load VMMR0.r0 (VERR_SYMBOL_VALUE_TOO_BIG)}, preserve=false aResultDetail=-611 00:00:01.223132 Console: Machine state changed to 'PoweredOff' 00:00:01.226459 Power up failed (vrc=VERR_SYMBOL_VALUE_TOO_BIG, hrc=NS_ERROR_FAILURE (0X80004005)) 00:00:01.736151 GUI: UIMachineViewNormal::resendSizeHint: Restoring guest size-hint for screen 0 to 800x600 00:00:01.736179 ERROR [COM]: aRC=E_ACCESSDENIED (0x80070005) aIID={4680b2de-8690-11e9-b83d-5719e53cf1de} aComponent={DisplayWrap} aText={The console is not powered up (setVideoModeHint)}, preserve=false aResultDetail=0 00:00:01.736217 GUI: Aborting startup due to power up progress issue detected... 00:00:01.736369 GUI: UIMediumEnumerator: Medium-enumeration finished! 00:00:01.739567 X Server details: vendor: The X.Org Foundation, release: 12101014, protocol version: 11.0, display string: :0 00:00:01.739578 Using XKB for keycode to scan code conversion 00:00:01.750898 GUI: UICommon: Handling aboutToQuit request.. 00:00:02.308404 GUI: UICommon: aboutToQuit request handled!
(In reply to Frank Reisert from comment #40) > Failed to load R0 module /usr/local/lib/virtualbox/VMMR0.r0 It seems that the problem is related to this new feature added in 7.0: > Devices: The EHCI and XHCI USB controller devices are now part of the open source base package IMHO, this code needs to be reviewed to work correctly in FreeBSD. Previously these devices were managed by an extension pack, never released for FreeBSD (and without sources available). The interesting article: https://ostechnix.com/virtualbox-error-failed-to-load-ring-0-module-vboxehcir0-r0/ If you can find a way to temporary disable EHCI and XHCI USB controller devices in the code (VirtualBox itself and kernel module) - maybe VM will start.
(In reply to Peter TKATCHENKO from comment #42) @Peter TKATCHENKO Yes and no. Yes: in both cases -- VBoxEhciR0.r0 which you have mentioned via URL, and VMMR0.r0 here -- the failure to load a module seems to have the same cause: the value of a symbol is too big. No: VMMR0.r0 has as far as I could figure out nothing to do with USB but is the virtual machine monitor. The only occurences where the error "VERR_SYMBOL_VALUE_TOO_BIG" is being logged are to be found in src/VBox/Runtime/common/ldr/ldrELFRelocator.cpp.h. Sort of obvious. Only I can't make anything of the source code. So far I have - built VBox 7.0.22 with llvm18 on FreeBSD 14.2-RELEASE -- with the original result "VMMR0.r0 can't be loaded because VERR_SYMBOL_VALUE_TOO_BIG" - built it which llvm14 on 14.2 -- with the same result - llvm18 on 14.1 -- same result - llvm18 on 13.4 -- same result - not very successfully lldb-ed VirtualBox in hope to see which symbol and value but the process exited when the GUI took over, of course ... So, what's wrong with VMMR0.r0? I can't tell. For my options are exhausted I give up at this point. regards -Frank
I think you need to get more logging. Someone reported that error at https://www.virtualbox.org/pipermail/vbox-dev/2009-May/001405.html and the response from the developers was: > Can you send me the VBox.log please? You can find it in > ~/.VirtualBox/Machines/<VM name>/Logs/VBox.log > It may also help if you recompile VBox with debugging turned on. > Just add BUILD_TYPE=debug to the kmk command line. and also: > And in that case, do > > export VBOX_LOG=+rt_ldr.e.l2.f > VirtualBox -startvm VM_NAME > > The resulting .log file (created in the current directory!) > would be interesting as well. Maybe some of that will still help? VBOX_LOG is documented here: https://www.virtualbox.org/wiki/VBoxLogging
(In reply to martin from comment #44) Thanks for the hints! I will give it a shot. regards -Frank
Status: no progress. I'm still stuck at the same point only a wee bit wiser. It all happens in file src/VBox/Runtime/common/ldr/ldrELFRelocateble.cpp.h in function RTLDRELF_NAME(RelocateSectionRel). From extended logging I can take these numbers: Value=000001ff1b262c95 SymValue=ffffffff82862ca0 *pAddrW=0347f6c31b262c95 (int32_t)Value=455486613 *(int32_t *)pAddrW=455486613 (Elf_Addr)*(int32_t *)pAddrw=000000001b262c95 Now, (Elf_Addr)*(int32_t *)pAddrw should be equal to Value, which it isn't. Value is being calculated from SymValue, BaseAddr, SecAddr, paRels[iRel].r_offset and paRels[iRel].r_addend. The latter two are being read from the ELF headers of VMMR0.r0 (at least I think so). BaseAddr is the base address which the module is being fixedup to. SecAddr is the section address. This is the address the relocations are relative to. Which leaves me with SymValue which in turn brings me (via RTLDRELF_NAME(Symbol)) to pfnGetImport. pfnGetImport is a function pointer which I cannot resolve because I'm not able to follow the chain of functions up to the point where a function is called with the respective function pointer as argument. So I can't tell where SymValue originates from. Is it being miscalculated, then why? Is it read from somewhere in VMMR0.r0? If so, where and what's wrong there and why? All I can say is that '$ readelf -a VMMR0.r0' doesn't give me a match to "ffffffff82862ca0" or even "82862ca0". At this point I won't ask upstream for help because I can't rule out llvm/ld/the_whole_shebang as the cause of this. If anybody can, please step in! Just to see how it would play out, I've tried to build VBox with gcc which opened another whole can of worms. So I've abandoned this idea. regards -Frank PS: below are copied the corresponding lines from ldrELFRelocateble.cpp.h: static int RTLDRELF_NAME(RelocateSectionRel)(PRTLDRMODELF pModElf, Elf_Addr BaseAddr, PFNRTLDRIMPORT pfnGetImport, void *pvUser, const Elf_Addr SecAddr, Elf_Size cbSec, const uint8_t *pu8SecBaseR, uint8_t *pu8SecBaseW, const void *pvRelocs, Elf_Size cbRelocs) { ... const Elf_Reloc *paRels = (const Elf_Reloc *)pvRelocs; Elf_Addr SymValue = 0; int rc = RTLDRELF_NAME(Symbol)(pModElf, BaseAddr, pfnGetImport, pvUser,ELF_R_SYM(paRels[iRel].r_info), &pSym, &SymValue); const Elf_Addr SourceAddr = SecAddr + paRels[iRel].r_offset + BaseAddr; const Elf_Addr Value = SymValue + paRels[iRel].r_addend - SourceAddr; *(int32_t *)pAddrW = (int32_t)Value; AssertMsgReturn((Elf_Addr)*(int32_t *)pAddrW == Value, ("Value=" FMT_ELF_ADDR "\n", Value), VERR_SYMBOL_VALUE_TOO_BIG); ... } static int RTLDRELF_NAME(Symbol)(PRTLDRMODELF pModElf, Elf_Addr BaseAddr, PFNRTLDRIMPORT pfnGetImport, void *pvUser, Elf_Size iSym, const Elf_Sym **ppSym, Elf_Addr *pSymValue) { ... int rc = pfnGetImport(&pModElf->Core, "", pszName, ~0U, &Value, pvUser); *pSymValue = (Elf_Addr)Value; ... }
(In reply to Frank Reisert from comment #46) Hi, I managed to get to !! VCPU0: Guru Meditation 1155 (VINF_EM_TRIPLE_FAULT) !! !! Skipping ring-0 registers and stack, rcErr=VINF_EM_TRIPLE_FAULT using bfd as linker with -fuse-ld=bfd for VMMR0.r0
(In reply to Frank Reisert from comment #46) I would guess that pfnGetImport is supLoadModuleResolveImport from src/VBox/HostDrivers/Support/SUPLibLdr.cpp, because the log file contains "SUP: RTLdrGetBits failed for VMMR0.r0" which is generated where supLoadModuleInner calls RTLdrGetBits in that file. I think SymValue is the address in memory, so you won't find it in any readelf output. Do you know the name of the symbol? Can you find the relocation in the output of readelf?
(In reply to Jesper Schmitz Mouridsen from comment #47) This was due to wrong kernel modules. build again with debug flags as the rest, it now starts a VM.
Created attachment 256027 [details] further work, boots ubuntu 22.04 installer after memtest
Could you post a copy of the port (gz) so we could test it further?
(In reply to Mario Lobo from comment #51) it should be here https://bugs.freebsd.org/bugzilla/attachment.cgi?id=256027
(In reply to martin from comment #48) Just to give a quick answer although it seems that this problem is solved. The symbol was 'SUPR0TracerFireProbe'. regards -Frank
(In reply to Jesper Schmitz Mouridsen from comment #52) Thank you, Jesper! One quick question: To compile the virtuabox modules, is it enough to change the version on the Makefile?
For the record. App and modules compiled fine. VirtualBox runs fine. But starting any one of my 12 VMs (BSD, Windows, linux, Snow, etc ...) enters in guru meditation. The VM seems that is going to start but it doesn´t.
(In reply to Mario Lobo from comment #55) Can it successfully create and run a new VM ?
Partially, if you take the ubuntu 22.04 installer iso, in bios mode and chooses memtest from the grub menu, it can afterwards boot the ubuntu installer just fine. Which can be a lot of different allocation issues or cpu setup and what not. I just recompiled the working 6 version with VBOX_WITH_VBOXR0_AS_DLL set, as I did with the 7 version, and that does not give any troubles for version 6. Any debug hints besides VBOX_LOG="all=~0" are welcome.
Just one suggestion on how to proceed: If we have something that works reasonably well, update the port and move the old patches to the *-legacy ports. That way we get more bug reports and can fix issues while people encountering those issues have an alternative that works. That's how the jump from 5 to 6 was handled. The legacy ports are still at version 5, which is now completely outdated.
(In reply to Daniel Tameling from comment #58) 5 in ports because it is the only virtualization for i386 and for amd64 without hardware virtualization (VT-x).
It was just a suggestion to make some progress without having a perfect solution. Upstream ended support for version 5 in 2020, so long term people need to find a different solution. But I'm not opposed to keeping it if there still are users. But it would also bei nice to have a supported version in ports even if ist still biggy.
(In reply to Daniel Tameling from comment #60) Maybe this create as *7? Or current 6 remove to *6 and this make as main.
(In reply to Vladimir Druzenko from comment #61) s/remove/rename/
(In reply to Brian Roper from comment #56) With the exception mentioned by Jesper on comment 57, nothing else works when creating a new VM.
(In reply to Vladimir Druzenko from comment #61) If it were my decision, I would proceed depending on how well version 7 works. If it mostly works, update the current one and create a new 6 port. If not, create a 7 port, so things don't break for a lot of people.
Created attachment 256202 [details] further work, boots systems
Created attachment 256203 [details] further work, boots systems So I reverted the use of kernel SUPR0HCPhysToVirt pmap_map which was not used in 6.1.50 and compiled VMMR0.r0 as as shared object as before. It booted some of my systems without the need of a pre-memtest.
(In reply to Jesper Schmitz Mouridsen from comment #66) I am really glad to say that, with the above change, ALL my previous VMs started without any problems so far. I had lockups with VMs that were using NAT networks created with the previous versions, but as soon as I changed to bridge, host only or pure NAT, they started normally. I'll keep on with the tests and report my findings.
Hi. Despite the fact that the VM starts and works fine, if it has an adapter with Host-only network, after the VM shuts down, the process VBoxNetDHCP (vboxnet0) keeps stuck, consuming 100% of the core it is working from, and it can only be killed by a reboot. All other adapters have been working fine so far.
upgraded to 7.0.24. Compiles and runs fine.
(In reply to Mario Lobo from comment #69) Where I can get port with 7.0.24? Can you attach tarball with port?
Created attachment 257060 [details] @JSM's 20241227 patches rebadged as virtualbox-ose70
(In reply to Vladimir Druzenko from comment #70) I rebadged @JSM's patches because I'm also testing your patches to 6.1.50. Thank you all for moving FreeBSD's VBox support ball forward! John groenveld@acm.org
No patches from this year - 5 last commits: https://cgit.freebsd.org/ports/log/emulators/virtualbox-ose
I can confirm that 7.0.24 as packaged here compiles and work just fine or so it seems. One nitpick: the kernel port still has the old distinfo, I used the one from the main package to compile the kernel modules.
With a Solaris guest, using gaphicscongroller=vmsvga 00:01:08.844393 00:01:08.844394 !!Assertion Failed!! 00:01:08.844395 Expression: pSvgaR3State->pFuncs3D 00:01:08.844396 Location : /usr/ports/emulators/virtualbox-ose70/work/VirtualBox-7.0.24/src/VBox/Devices/Graphics/DevVGA-SVGA3d.cpp(1398) int vmsvga3dChangeMode(PVGASTATECC) 00:01:08.844398 Stack : 00:01:08.844398 0000000824ccb273 00:01:08.844399 And using graphicscontroller=vboxsvga 00:00:29.761706 GUI: UISession::sltAdditionsChange: GA state change event came, notifying listeners 00:00:29.761771 GUI: UIMachineLogicNormal::sltCheckForRequestedVisualStateType: Requested-state=1, Machine-state=6 00:00:29.762153 Guest Control: GUEST_MSG_REPORT_FEATURES: 0x7f, 0x8000000000000000 00:00:29.782594 GUI: UISession::sltAdditionsChange: GA state really changed, notifying listeners 00:00:29.782651 GUI: UIMachineViewNormal::adjustGuestScreenSize: Adjust guest-screen size if necessary 00:00:29.782694 GUI: UISession::sltAdditionsChange: GA state change event came, notifying listeners 00:00:29.782715 GUI: UIMachineLogicNormal::sltCheckForRequestedVisualStateType: Requested-state=1, Machine-state=6 00:00:43.736207 00:00:43.736208 !!Assertion Failed!! 00:00:43.736209 Expression: guest-input: screen.u32StartOffset <= pView->u32ViewSize && u64ScreenSize <= pView->u32MaxScreenSize && screen.u32StartOffset <= pView->u32ViewSize - (uint32_t)u64ScreenSize 00:00:43.736210 Location : /usr/ports/emulators/virtualbox-ose70/work/VirtualBox-7.0.24/src/VBox/Devices/Graphics/DevVGA_VBVA.cpp(2295) int vbvaInfoScreen(PVGASTATECC, const volatile VBVAINFOSCREEN *) 00:00:43.736211 Stack : 00:00:43.736212 00000008257bd273 00:00:43.736212 00:00:43.736420 u32StartOffset=0x0 u32ViewSize=0xff0000 u64ScreenSize=0x4afed40 u32MaxScreenSize=0xfe0000 John groenveld@acm.org
(In reply to groenveld from comment #75) OpenIndiana guest with graphicscontroller="vboxvga" 00:27:59.886389 00:27:59.886390 !!Assertion Failed!! 00:27:59.886390 Expression: guest-input: screen.u32StartOffset <= pView->u32ViewSize && u64ScreenSize <= pView->u32MaxScreenSize && screen.u32StartOffset <= pView->u32ViewSize - (uint32_t)u64ScreenSize 00:27:59.886391 Location : /usr/ports/emulators/virtualbox-ose70/work/VirtualBox-7.0.24/src/VBox/Devices/Graphics/DevVGA_VBVA.cpp(2295) int vbvaInfoScreen(PVGASTATECC, const volatile VBVAINFOSCREEN *) 00:27:59.886393 Stack : 00:27:59.886393 0000000825be4273 00:27:59.886394 00:27:59.886760 u32StartOffset=0x0 u32ViewSize=0xff0000 u64ScreenSize=0x4afed40 u32MaxScreenSize=0xfe0000 John groenveld@acm.org
Hi, I'm looking for the “emulators/virtualbox-ose-additions” for 7.1.x. This thread seams to talk about the whole Virtualbox host, whereas I just need the VB guest tools/additions. Is this the good thread to talk about it? Should I open a new issue? Regards, Antoine
Where to get file: ${FILESDIR}/doc.patch:-p1 ?
===> FAILED to apply cleanly FreeBSD patch(es) patch-src_VBox_Devices_PC_ipxe_Makefile.kmk
(In reply to Antoine Beaubien from comment #77) Here, but additions have low priority. But if you can create and test new port emulators/virtualbox-ose-additions71 self then we can test it too and commit.
FYI i have work for 7.1.4 almost done as well, but I am disappointed with the upstream bugs in nested vt-x ept code also present in linux. I tried to reach out to upstream without success, but ig their biggest priority is vbox in vbox.. It would be cool to run bhyve in freebsd in vbox or a non crashing memtest86... they both either crashes the host or goes to guru meditation of the first vbox... The patches for 7.1.4 have differed a bit off the main ports head after the cleanup and still takes some manual editing of the kmod part to make work. I took also a update of kbuild for qt6.kmk, so I will have a look at that to make some proper patches.
(In reply to groenveld from comment #71) ===> Applying FreeBSD patches for virtualbox-ose70-7.0.24 from /usr/ports/emulators/virtualbox-ose70/files No such line 564 in input file, ignoring
(In reply to Vladimir Druzenko from comment #82) Yes I got this too but it seems harmless, at least in my case (a single VM running Windows 10).
Created attachment 257116 [details] 7.0.24 v1 with integrated all previous patches from 6.1.50 Please use these ports as a basis for future work. P.S. Tested build only in poudriere 14.2 amd64 - runtime has not been tested yet.
(In reply to Vladimir Druzenko from comment #84) Thank you for merging the 6.1.50 updates with @JSM's work. Windows 11 guest aborts on restore: 00:00:10.355167 !!Assertion Failed!! 00:00:10.355168 Expression: uMarker == VGA_SAVED_STATE_MAKE_MARKER(6) 00:00:10.355169 Location : /usr/ports/emulators/virtualbox-ose70/work/VirtualBox-7.0.24/src/VBox/Devices/Graphics/DevVGA.cpp(6011) int vgaR3LoadExec(PPDMDEVINS, PSSMHANDLE, uint32_t, uint32_t) 00:00:10.355170 Stack : 00:00:10.355170 0000000825c93273 00:00:10.355171 00:00:10.355285 Bad VGA marker: expected a72656b72614d36, got 19200102 FreeBSD guest aborts at startx: 00:01:01.526252 !!Assertion Failed!! 00:01:01.526252 Expression: guest-input: screen.u32StartOffset <= pView->u32ViewSize && u64ScreenSize <= pView->u32MaxScreenSize && screen.u32StartOffset <= pView->u32ViewSize - (uint32_t)u64ScreenSize 00:01:01.526253 Location : /usr/ports/emulators/virtualbox-ose70/work/VirtualBox-7.0.24/src/VBox/Devices/Graphics/DevVGA_VBVA.cpp(2295) int vbvaInfoScreen(PVGASTATECC, const volatile VBVAINFOSCREEN *) 00:01:01.526255 Stack : 00:01:01.526255 0000000823cfb273 00:01:01.526255 00:01:01.526405 u32StartOffset=0x0 u32ViewSize=0x1ff0000 u64ScreenSize=0x4afed40 u32MaxScreenSize=0x1fe0000 John groenveld@acm.org
(In reply to groenveld from comment #85) Tested build with llvm14 from ports - runtime work! Build with llvm 18.1 from base r14.2 in progress.
(In reply to Vladimir Druzenko from comment #86) > Build with llvm 18.1 from base r14.2 in progress. Install DVD of the FreeBSD 14.2 run fine! Other llvms from ports didn't tested yet.
Created attachment 257136 [details] 7.0.24 v2 with integrated all previous patches from 6.1.50 (In reply to Vladimir Druzenko from comment #87) llvm17 from ports work fine too! I don't see any point in testing with other llvm-s from ports, for example 15. Please test this version.
(In reply to Vladimir Druzenko from comment #88) This patchset doesn't build for me: root@tu45b-freebsd:/usr/ports/emulators/virtualbox-ose-70 # make install clean >/dev/null Config.kmk:3506: /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/DynamicConfig.kmk: No such file or directory Config.kmk:9069: /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/revision.kmk: No such file or directory /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/src/VBox/Main/Makefile.kmk:375: /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/vboxapiwrap.kmk: No such file or directory /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/src/libs/xpcom18a4/python/gen_python_deps.py:123: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. if StrictVersion(realversion) < StrictVersion('2.6'): /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/kBuild/footer-pass2-installs.kmk:67: warning: overriding recipe for target `/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/bin/src/vboxdrv/include/iprt/crc.h' /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/kBuild/footer-pass2-installs.kmk:67: warning: ignoring old recipe for target `/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/bin/src/vboxdrv/include/iprt/crc.h' /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/kBuild/footer-pass2-installs.kmk:67: warning: overriding recipe for target `/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/dist/bin/src/vboxdrv/include/iprt/crc.h' /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/kBuild/footer-pass2-installs.kmk:67: warning: ignoring old recipe for target `/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/dist/bin/src/vboxdrv/include/iprt/crc.h' /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/kBuild/footer-pass2-installs.kmk:67: warning: overriding recipe for target `/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/bin/src/vboxdrv/include/iprt/net.h' /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/kBuild/footer-pass2-installs.kmk:67: warning: ignoring old recipe for target `/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/bin/src/vboxdrv/include/iprt/net.h' /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/kBuild/footer-pass2-installs.kmk:67: warning: overriding recipe for target `/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/dist/bin/src/vboxdrv/include/iprt/net.h' /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/kBuild/footer-pass2-installs.kmk:67: warning: ignoring old recipe for target `/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/dist/bin/src/vboxdrv/include/iprt/net.h' /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/src/libs/xpcom18a4/python/gen_python_deps.py:123: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead. if StrictVersion(realversion) < StrictVersion('2.6'): /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/kBuild/footer-pass2-installs.kmk:67: warning: overriding recipe for target `/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/bin/src/vboxdrv/include/iprt/crc.h' /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/kBuild/footer-pass2-installs.kmk:67: warning: ignoring old recipe for target `/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/bin/src/vboxdrv/include/iprt/crc.h' /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/kBuild/footer-pass2-installs.kmk:67: warning: overriding recipe for target `/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/dist/bin/src/vboxdrv/include/iprt/crc.h' /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/kBuild/footer-pass2-installs.kmk:67: warning: ignoring old recipe for target `/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/dist/bin/src/vboxdrv/include/iprt/crc.h' /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/kBuild/footer-pass2-installs.kmk:67: warning: overriding recipe for target `/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/bin/src/vboxdrv/include/iprt/net.h' /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/kBuild/footer-pass2-installs.kmk:67: warning: ignoring old recipe for target `/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/bin/src/vboxdrv/include/iprt/net.h' /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/kBuild/footer-pass2-installs.kmk:67: warning: overriding recipe for target `/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/dist/bin/src/vboxdrv/include/iprt/net.h' /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/kBuild/footer-pass2-installs.kmk:67: warning: ignoring old recipe for target `/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/dist/bin/src/vboxdrv/include/iprt/net.h' /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/src/VBox/Runtime/common/alloc/alloc.cpp:44:10: fatal error: 'iprt/mem.h' file not found 44 | #include <iprt/mem.h> | ^~~~~~~~~~~~ 1 error generated. /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/src/VBox/Runtime/common/alloc/memcache.cpp:41:10: fatal error: 'iprt/memcache.h' file not found 41 | #include <iprt/memcache.h> | ^~~~~~~~~~~~~~~~~ kmk: *** [/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/obj/RuntimeBldProg/common/alloc/alloc.o] Error 1 kmk: *** Waiting for unfinished jobs.... /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/src/bldprogs/genalias.cpp:36:10: fatal error: 'iprt/stdint.h' file not found 36 | #include <iprt/stdint.h> | ^~~~~~~~~~~~~~~ /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/src/VBox/Runtime/common/asn1/asn1-basics.cpp:41:10: fatal error: 'internal/iprt.h' file not found 41 | #include "internal/iprt.h" | ^~~~~~~~~~~~~~~~~ 1 error generated. 1 error generated. kmk: *** [/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/obj/RuntimeBldProg/common/alloc/memcache.o] Error 1 kmk: *** [/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/obj/RuntimeBldProg/common/asn1/asn1-basics.o] Error 1 1 error generated. /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/src/bldprogs/filesplitter.cpp:38:10: fatal error: 'iprt/string.h' file not found 38 | #include <iprt/string.h> | ^~~~~~~~~~~~~~~ kmk: *** [/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/obj/genalias/genalias.o] Error 1 1 error generated. kmk: *** [/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/obj/filesplitter/filesplitter.o] Error 1 /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/src/bldprogs/VBoxCmp.cpp:38:10: fatal error: 'iprt/string.h' file not found 38 | #include <iprt/string.h> | ^~~~~~~~~~~~~~~ 1 error generated. kmk: *** [/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/obj/VBoxCmp/VBoxCmp.o] Error 1 kmk: *** Exiting with status 2 root@tu45b-freebsd:/usr/ports/emulators/virtualbox-ose-70 #
(In reply to fabio.comolli from comment #89) Need more details about environment: freebsd-version pkg info | grep kBuild pkg info | virtualbox cat /var/db/ports/emulators_virtualbox-ose-70/options cat /var/db/ports/emulators_virtualbox-ose-kmod-70/options cat /var/db/ports/devel_kBuild/options Remove all previous installed virtualbox ports from system and from ports tree before. Some combinations of options are broken - fix in progress, but default options build fine for me in poudriere and on live system 14.2 amd64.
(In reply to Vladimir Druzenko from comment #90) IMHO the problem is that when I compile: "@JSM's 20241227 patches rebadged as virtualbox-ose70" I get: /usr/ports/emulators/virtualbox-ose-kmod70/work/VirtualBox-7.0.24/kBuild/footer-pass2-installs.kmk:67: warning: ignoring old recipe for target `/usr/ports/emulators/virtualbox-ose-kmod70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/dist/bin/src/vboxdrv/include/iprt/net.h' kBuild: Installing /usr/ports/emulators/virtualbox-ose-kmod70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/bin/src/Makefile ... kBuild: Installing /usr/ports/emulators/virtualbox-ose-kmod70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/bin/src/vboxnetadp/VBoxNetAdp-freebsd.c kBuild: Installing /usr/ports/emulators/virtualbox-ose-kmod70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/bin/src/vboxnetadp/VBoxNetAdp.c kBuild: Installing /usr/ports/emulators/virtualbox-ose-kmod70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/bin/src/vboxnetadp/VBoxNetAdpInternal.h kBuild: Installing /usr/ports/emulators/virtualbox-ose-kmod70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/bin/src/vboxnetadp/r0drv/freebsd/the-freebsd-kernel.h kBuild: Installing /usr/ports/emulators/virtualbox-ose-kmod70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/bin/src/vboxnetadp/version-generated.h kBuild: Installing /usr/ports/emulators/virtualbox-ose-kmod70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/bin/src/vboxnetadp/product-generated.h kBuild: Installing /usr/ports/emulators/virtualbox-ose-kmod70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/bin/src/vboxnetadp/Makefile kBuild: Installing /usr/ports/emulators/virtualbox-ose-kmod70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/bin/src/vboxdrv/Makefile --- all --- whilst with your "7.0.24 v2 with integrated all previous patches from 6.1.50 " I get: /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/kBuild/footer-pass2-installs.kmk:67: warning: ignoring old recipe for target `/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/dist/bin/src/vboxdrv/include/iprt/net.h' kBuild: Pass - Build Programs kBuild: Compiling bin2c - /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/src/bldprogs/bin2c.c kBuild: Compiling biossums - /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/src/bldprogs/biossums.c kBuild: Compiling filesplitter - /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/src/bldprogs/filesplitter.cpp kBuild: Compiling genalias - /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/src/bldprogs/genalias.cpp kBuild: Compiling VBoxCmp - /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/src/bldprogs/VBoxCmp.cpp kBuild: Compiling RuntimeBldProg - /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/src/VBox/Runtime/common/alloc/alloc.cpp kBuild: Compiling RuntimeBldProg - /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/src/VBox/Runtime/common/alloc/memcache.cpp kBuild: Compiling RuntimeBldProg - /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/src/VBox/Runtime/common/asn1/asn1-basics.cpp /usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/src/VBox/Runtime/common/alloc/alloc.cpp:44:10: fatal error: 'iprt/mem.h' file not found 44 | #include <iprt/mem.h> | ^~~~~~~~~~~~ 1 error generated. and so on. Anyways, to answer your questions: [14:07]fmc000@tu45b-freebsd ~> freebsd-version 14.2-RELEASE-p1 [14:07]fmc000@tu45b-freebsd ~> pkg info | grep kBuild kBuild-0.1.9998_15 Makefile framework [14:07]fmc000@tu45b-freebsd ~> pkg info | grep virtualbox [14:07]fmc000@tu45b-freebsd ~ [0|1]> cat /var/db/ports/emulators_virtualbox-ose-70/options # This file is auto-generated by 'make config'. # Options for virtualbox-ose-70-7.0.24 _OPTIONS_READ=virtualbox-ose-70-7.0.24 _FILE_COMPLETE_OPTIONS_LIST=AIO ALSA DBUS DEBUG DOCS GUESTADDITIONS NLS PYTHON QT5 R0LOGGING UDPTUNNEL VBOXIMG VDE VNC VPX WEBSERVICE X11 OPTIONS_FILE_SET+=AIO OPTIONS_FILE_UNSET+=ALSA OPTIONS_FILE_SET+=DBUS OPTIONS_FILE_UNSET+=DEBUG OPTIONS_FILE_SET+=DOCS OPTIONS_FILE_UNSET+=GUESTADDITIONS OPTIONS_FILE_SET+=NLS OPTIONS_FILE_SET+=PYTHON OPTIONS_FILE_SET+=QT5 OPTIONS_FILE_UNSET+=R0LOGGING OPTIONS_FILE_SET+=UDPTUNNEL OPTIONS_FILE_UNSET+=VBOXIMG OPTIONS_FILE_UNSET+=VDE OPTIONS_FILE_SET+=VNC OPTIONS_FILE_UNSET+=VPX OPTIONS_FILE_SET+=WEBSERVICE OPTIONS_FILE_SET+=X11 [14:08]fmc000@tu45b-freebsd ~> cat /var/db/ports/emulators_virtualbox-ose-kmod-70/options cat: /var/db/ports/emulators_virtualbox-ose-kmod-70/options: No such file or directory [14:08]fmc000@tu45b-freebsd ~ [1]> cat /var/db/ports/devel_kBuild/options # This file is auto-generated by 'make config'. # Options for kBuild-0.1.9998_15 _OPTIONS_READ=kBuild-0.1.9998_15 _FILE_COMPLETE_OPTIONS_LIST=DOCS GCC OPTIONS_FILE_SET+=DOCS OPTIONS_FILE_SET+=GCC [14:08]fmc000@tu45b-freebsd ~>
(In reply to fabio.comolli from comment #91) > /usr/ports/emulators/virtualbox-ose-kmod70 > /usr/ports/emulators/virtualbox-ose-70 These are different ports. Can you install emulators/virtualbox-ose-kmod-70 before build emulators/virtualbox-ose-70? Look like your ports tree is broken. Be careful: emulators/virtualbox-ose-kmod-70 not emulators/virtualbox-ose-kmod70 and emulators/virtualbox-ose-70 not emulators/virtualbox-ose70. Also try to update devel/kBuild to r3660: https://bugs.freebsd.org/284420
(In reply to Vladimir Druzenko from comment #92) yes, sorry for the confusion. I copy-pasted the wrong build output but the result is the same. And I don't think my ports tree is broken, I just pulled it yesterday. Installing virtualbox-ose-kmod-70-7.0.24.1402000.pkg before trying to build virtualbox-ose-70 does not solve the build error. I see that kBuild in ports is r3127, not r3660 but I don't think that my build environment is the problem as the other patchset builds and work just fine.
(In reply to fabio.comolli from comment #93) I build new ports with different options more than 20 times in poudriere and on live system for last 2 days. Something is definitely broken in your environment. Try to build in poudriere.
(In reply to Vladimir Druzenko from comment #94) OK, I don't want to pollute this bug report with our considerations about my build environment. I reinstalled the packages that I built (on my one and only FreeBSD laptop) using "@JSM's 20241227 patches rebadged as virtualbox-ose70" and I confirm that VB 7.0.24 works just fine and that my W10 VM is currently active.
Created attachment 257147 [details] 7.0.24 v3 Fixed options. I'll commit this "patch" in few days together with devel/kBuild r3660 (https://bugs.freebsd.org/284420).
(In reply to Vladimir Druzenko from comment #96) On current and package built with clang 19 from base. I triggered it by failing to kldload vboxdrv, but previous virtualbox-ose failed gracefully.Core was generated by `/usr/local/lib/virtualbox/VirtualBox'. Program terminated with signal SIGSEGV, Segmentation fault. Address not mapped to object. #0 0x0000000836004b3e in ?? () from /usr/local/lib/libpcre2-16.so.0 [Current thread is 1 (LWP 102153)] (gdb) bt #0 0x0000000836004b3e in ?? () from /usr/local/lib/libpcre2-16.so.0 #1 0x0000000836004770 in pcre2_jit_compile_16 () from /usr/local/lib/libpcre2-16.so.0 #2 0x000000082651af10 in ?? () from /usr/local/lib/qt5/libQt5Core.so.5 #3 0x000000082651bf71 in QRegularExpression::isValid() const () from /usr/local/lib/qt5/libQt5Core.so.5 #4 0x00000008264fe337 in QString::replace(QRegularExpression const&, QString const&) () from /usr/local/lib/qt5/libQt5Core.so.5 #5 0x0000000823a01236 in UITranslator::highlight(QString, bool) () from /usr/local/lib/virtualbox/UICommon.so #6 0x0000000823a486e3 in UIMedium::refresh() () from /usr/local/lib/virtualbox/UICommon.so #7 0x0000000823a496a8 in UIMedium::blockAndQueryState() () from /usr/local/lib/virtualbox/UICommon.so #8 0x0000000823a502d2 in ?? () from /usr/local/lib/virtualbox/UICommon.so #9 0x00000008239fc71f in UITask::start() () from /usr/local/lib/virtualbox/UICommon.so #10 0x00000008239fd420 in ?? () from /usr/local/lib/virtualbox/UICommon.so #11 0x0000000826473759 in ?? () from /usr/local/lib/qt5/libQt5Core.so.5 #12 0x000000082d02dc52 in ?? () from /lib/libthr.so.3 #13 0x0000000000000000 in ?? () Backtrace stopped: Cannot access memory at address 0x87d91d000 Core was generated by `/usr/local/lib/virtualbox/VirtualBox'. Program terminated with signal SIGSEGV, Segmentation fault. Address not mapped to object. #0 0x0000000836004b3e in ?? () from /usr/local/lib/libpcre2-16.so.0 [Current thread is 1 (LWP 102153)] (gdb) bt #0 0x0000000836004b3e in ?? () from /usr/local/lib/libpcre2-16.so.0 #1 0x0000000836004770 in pcre2_jit_compile_16 () from /usr/local/lib/libpcre2-16.so.0 #2 0x000000082651af10 in ?? () from /usr/local/lib/qt5/libQt5Core.so.5 #3 0x000000082651bf71 in QRegularExpression::isValid() const () from /usr/local/lib/qt5/libQt5Core.so.5 #4 0x00000008264fe337 in QString::replace(QRegularExpression const&, QString const&) () from /usr/local/lib/qt5/libQt5Core.so.5 #5 0x0000000823a01236 in UITranslator::highlight(QString, bool) () from /usr/local/lib/virtualbox/UICommon.so #6 0x0000000823a486e3 in UIMedium::refresh() () from /usr/local/lib/virtualbox/UICommon.so #7 0x0000000823a496a8 in UIMedium::blockAndQueryState() () from /usr/local/lib/virtualbox/UICommon.so #8 0x0000000823a502d2 in ?? () from /usr/local/lib/virtualbox/UICommon.so #9 0x00000008239fc71f in UITask::start() () from /usr/local/lib/virtualbox/UICommon.so #10 0x00000008239fd420 in ?? () from /usr/local/lib/virtualbox/UICommon.so #11 0x0000000826473759 in ?? () from /usr/local/lib/qt5/libQt5Core.so.5 #12 0x000000082d02dc52 in ?? () from /lib/libthr.so.3 #13 0x0000000000000000 in ?? () Backtrace stopped: Cannot access memory at address 0x87d91d000 John groenveld@acm.org
(In reply to groenveld from comment #97) Not able to reproduce after updating current to cdacb12065e4 and subsequent pkg update. John groenveld@acm.org
(In reply to groenveld from comment #85) With @VVD's 7.0.24 v3 X windows no longer crashes FreeBSD, OI and Solaris guests with graphicscontroller="vboxvga" and graphicscontroller="vmsvga" Thank you! John groenveld@acm.org
.if ${PORT_OPTIONS:MX11} #VBOX_PROGS+= VBoxSDL .endif VBoxSDL does not build. But despite this, I will commit the new ports emulators/virtualbox-ose-70, emulators/virtualbox-ose-kmod-70 and emulators/virtualbox-ose-nox11-70 as experimental today. Hopefully we will fix this soon.
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=179f17fc36fde67de42ba661b7b043e8d728578e commit 179f17fc36fde67de42ba661b7b043e8d728578e Author: Vladimir Druzenko <vvd@FreeBSD.org> AuthorDate: 2025-02-02 19:15:13 +0000 Commit: Vladimir Druzenko <vvd@FreeBSD.org> CommitDate: 2025-02-02 19:15:13 +0000 emulators/virtualbox-ose{,-additions,-kmod}{,-legacy}: Update CONFLICTS_INSTALL and PORTSCOUT before commit new ports with VirtualBox 7.0.x PR: 271146 emulators/virtualbox-ose-additions-legacy/Makefile | 4 +++- emulators/virtualbox-ose-additions/Makefile | 5 ++++- emulators/virtualbox-ose-kmod-legacy/Makefile | 3 ++- emulators/virtualbox-ose-kmod/Makefile | 4 +++- emulators/virtualbox-ose-legacy/Makefile | 4 +++- emulators/virtualbox-ose/Makefile | 5 ++++- 6 files changed, 19 insertions(+), 6 deletions(-)
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=f24fdd9f85160185dfe981a8bba587246e7db148 commit f24fdd9f85160185dfe981a8bba587246e7db148 Author: Vladimir Druzenko <vvd@FreeBSD.org> AuthorDate: 2025-02-02 23:19:31 +0000 Commit: Vladimir Druzenko <vvd@FreeBSD.org> CommitDate: 2025-02-02 23:19:31 +0000 emulators/virtualbox-ose{,-kmod,-nox11}-70: Add new ports VirtualBox 7.0.24 General status: * VirtualBox 7.1.x is still not fully ported to FreeBSD, so we are adding 7.0.x in experimental/test mode. * 7.0.x is being tested on hosts of several FreeBSD developers and users. * As far as we know, 7.0.x has the same system requirements as 6.1.x - amd64 with VT-x (we even tested it on Core 2 Duo E6xxx), so after confirming stability with more users, 7.0.x is expected to replace 6.1.x. * The following ports also need to be created for this replacement: - emulators/virtualbox-ose-additions-70; - emulators/virtualbox-ose-additions-nox11-70; - www/phpvirtualbox-70. * If 7.1.x has the same system requirements, then when we port 7.1.x, it will replace 7.0.x. This patch is a joint effort by several FreeBSD developers and users. Thanks to everyone involved! Changelog: https://www.virtualbox.org/wiki/Changelog-7.0 PR: 271146 emulators/virtualbox-ose-70/Makefile | 57 +-- emulators/virtualbox-ose-70/distinfo | 14 +- .../virtualbox-ose-70/files/extrapatch-Config.kmk | 2 +- emulators/virtualbox-ose-70/files/patch-Config.kmk | 458 ++++++++++++++------- emulators/virtualbox-ose-70/files/patch-configure | 35 +- .../files/patch-include_VBox_sup.h (new) | 11 + ...-Additions-common-VBoxGuest-VBoxGuest-freebsd.c | 52 ++- ...HostDrivers-VBoxNetFlt-freebsd-files_vboxnetflt | 8 +- ...Box-Installer-freebsd-virtualbox.desktop (gone) | 10 - ...ch-src-VBox-Main-webservice-Makefile.kmk (gone) | 39 -- ...x_Additions_freebsd_vboxvfs_Makefile.kmk (gone) | 50 --- ...Box_Additions_x11_VBoxClient_logging.cpp (gone) | 10 - ...Box_Additions_x11_vboxvideo_Makefile.kmk (gone) | 15 - ...11include_xproto-7.0.18_X11_Xfuncproto.h (gone) | 230 ----------- .../patch-src_VBox_Debugger_Makefile.kmk (gone) | 10 - .../files/patch-src_VBox_Devices_Makefile.kmk | 34 +- .../patch-src_VBox_Devices_PC_ipxe_Makefile.kmk | 12 +- ...x_Frontends_VBoxHeadless_VBoxHeadless.cpp (new) | 11 + ..._Frontends_VBoxManage_VBoxManageHelp.cpp (gone) | 43 -- ...Box_Frontends_VBoxManage_VBoxManageModifyVM.cpp | 22 +- ...c_VBox_Frontends_VirtualBox_Makefile.kmk (gone) | 18 - .../patch-src_VBox_HostDrivers_Support_SUPDrv.cpp | 24 +- ...h-src_VBox_HostDrivers_Support_freebsd_Makefile | 26 +- ...ox_HostDrivers_Support_freebsd_SUPDrv-freebsd.c | 54 ++- ...rivers_Support_freebsd_SUPLib-freebsd.cpp (new) | 11 + ...VBox_HostDrivers_Support_freebsd_files__vboxdrv | 26 +- ...ch-src_VBox_HostDrivers_VBoxNetFlt_Makefile.kmk | 4 +- .../files/patch-src_VBox_Main_Makefile.kmk | 14 +- ...x_NetworkServices_Dhcpd_VBoxNetDhcpd.cpp (gone) | 11 - ...h-src_VBox_RDP_client-1.8.4_Makefile.kmk (gone) | 13 - .../patch-src_VBox_Runtime_Makefile.kmk (new) | 12 + ...Box_Runtime_r0drv_freebsd_alloc-r0drv-freebsd.c | 51 +-- ...ox_Runtime_r0drv_freebsd_memobj-r0drv-freebsd.c | 240 +++++------ ...Runtime_r3_freebsd_systemmem-freebsd.cpp (gone) | 39 -- .../patch-src_VBox_VMM_VMMR3_PGMPhys.cpp (gone) | 11 - .../files/patch-src_VMM_Config.kmk (new) | 11 + .../files/virtualbox.desktop (new) | 17 + emulators/virtualbox-ose-70/pkg-plist | 6 +- emulators/virtualbox-ose-kmod-70/Makefile | 13 +- emulators/virtualbox-ose-kmod-70/distinfo | 6 +- emulators/virtualbox-ose-nox11-70/Makefile | 6 +- 41 files changed, 683 insertions(+), 1053 deletions(-)
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=9ef87f0830a3c0d08f51082592e84d2116726d6a commit 9ef87f0830a3c0d08f51082592e84d2116726d6a Author: Vladimir Druzenko <vvd@FreeBSD.org> AuthorDate: 2025-02-02 22:50:49 +0000 Commit: Vladimir Druzenko <vvd@FreeBSD.org> CommitDate: 2025-02-02 22:54:38 +0000 emulators/virtualbox-ose{,-kmod,-nox11}-70: Repocopy from emulators/virtualbox-ose{,-kmod,-nox11} PR: 271146 emulators/Makefile | 3 + emulators/virtualbox-ose-70/Makefile (new) | 431 ++++++ emulators/virtualbox-ose-70/distinfo (new) | 7 + .../files/extrapatch-Config.kmk (new) | 11 + ...VBox-HostDrivers-Support-freebsd-Makefile (new) | 11 + .../files/extrapatch-vboximg-Config.kmk (new) | 11 + .../virtualbox-ose-70/files/patch-Config.kmk (new) | 234 +++ .../virtualbox-ose-70/files/patch-configure (new) | 126 ++ .../files/patch-include-iprt-x86.h (new) | 19 + .../files/patch-include_VBox_com_array.h (new) | 36 + .../files/patch-include_iprt_string.h (new) | 14 + ...ions-common-VBoxGuest-VBoxGuest-freebsd.c (new) | 290 ++++ ...ditions-common-VBoxGuest-freebsd-Makefile (new) | 27 + ...-common-VBoxGuest-freebsd-files_vboxguest (new) | 34 + ...Additions-x11-Installer-98vboxadd-xclient (new) | 17 + ...dditions-x11-Installer-vboxclient.desktop (new) | 10 + ...VBox-Devices-Network-slirp-bsd-sys-mbuf.h (new) | 12 + ...-VBox-HostDrivers-VBoxNetAdp-Makefile.kmk (new) | 20 + ...ivers-VBoxNetFlt-freebsd-files_vboxnetflt (new) | 10 + .../patch-src-VBox-Installer-Makefile.kmk (new) | 14 + .../patch-src-VBox-Installer-freebsd-VBox.sh (new) | 77 + ...VBox-Installer-freebsd-virtualbox.desktop (new) | 10 + ...c-VBox-Main-src-server-VirtualBoxImpl.cpp (new) | 11 + ...tch-src-VBox-Main-webservice-Makefile.kmk (new) | 39 + .../patch-src-VBox-Runtime-Makefile.kmk (new) | 14 + ...-r0drv-freebsd-sleepqueue-r0drv-freebsd.h (new) | 39 + ..._common_VBoxService_VBoxServiceVMInfo.cpp (new) | 71 + ...c_VBox_Additions_common_pam_pam__vbox.cpp (new) | 20 + ...patch-src_VBox_Additions_freebsd_Makefile (new) | 38 + ...h-src_VBox_Additions_freebsd_Makefile.kmk (new) | 31 + ...ox_Additions_freebsd_drm_vboxvideo__drm.c (new) | 17 + ...tions_freebsd_mount__vboxvfs_Makefile.kmk (new) | 26 + ...s_freebsd_mount__vboxvfs_mount__vboxvfs.8 (new) | 56 + ...s_freebsd_mount__vboxvfs_mount__vboxvfs.c (new) | 171 +++ ...ox_Additions_freebsd_vboxvfs_Makefile.kmk (new) | 50 + ...src_VBox_Additions_freebsd_vboxvfs_bcmp.c (new) | 12 + ..._VBox_Additions_freebsd_vboxvfs_vboxvfs.h (new) | 428 ++++++ ...Additions_freebsd_vboxvfs_vboxvfs__prov.c (new) | 1015 +++++++++++++ ...ditions_freebsd_vboxvfs_vboxvfs__vfsops.c (new) | 645 ++++++++ ...dditions_freebsd_vboxvfs_vboxvfs__vnops.c (new) | 1543 ++++++++++++++++++++ ...VBox_Additions_x11_VBoxClient_logging.cpp (new) | 10 + ...VBox_Additions_x11_vboxmouse_Makefile.kmk (new) | 29 + ...VBox_Additions_x11_vboxvideo_Makefile.kmk (new) | 15 + ...x11include_xproto-7.0.18_X11_Xfuncproto.h (new) | 230 +++ .../patch-src_VBox_Debugger_Makefile.kmk (new) | 10 + ..._Devices_Graphics_DevVGA-SVGA3d-glLdr.cpp (new) | 29 + ...ox_Devices_Graphics_DevVGA-SVGA3d-glLdr.h (new) | 11 + ...ox_Devices_Graphics_DevVGA-SVGA3d-ogl.cpp (new) | 38 + .../patch-src_VBox_Devices_Makefile.kmk (new) | 44 + ...tch-src_VBox_Devices_PC_ipxe_Makefile.kmk (new) | 29 + ...ox_Devices_USB_USBProxyDevice-freebsd.cpp (new) | 11 + .../patch-src_VBox_ExtPacks_VNC_VBoxVNC.cpp (new) | 58 + ...x_Frontends_VBoxManage_VBoxManageHelp.cpp (new) | 43 + ...ontends_VBoxManage_VBoxManageModifyVM.cpp (new) | 29 + ...rc_VBox_Frontends_VirtualBox_Makefile.kmk (new) | 18 + ...h-src_VBox_HostDrivers_Support_SUPDrv.cpp (new) | 11 + ...VBox_HostDrivers_Support_SUPDrvInternal.h (new) | 11 + ...VBox_HostDrivers_Support_freebsd_Makefile (new) | 30 + ...tDrivers_Support_freebsd_SUPDrv-freebsd.c (new) | 224 +++ ...ostDrivers_Support_freebsd_files__vboxdrv (new) | 30 + ...x_HostDrivers_VBoxNetAdp_freebsd_Makefile (new) | 11 + ...s_VBoxNetAdp_freebsd_VBoxNetAdp-freebsd.c (new) | 147 ++ ..._VBox_HostDrivers_VBoxNetFlt_Makefile.kmk (new) | 11 + ...x_HostDrivers_VBoxNetFlt_freebsd_Makefile (new) | 11 + ...s_VBoxNetFlt_freebsd_VBoxNetFlt-freebsd.c (new) | 471 ++++++ ...VBox_HostDrivers_adpctl_VBoxNetAdpCtl.cpp (new) | 11 + .../files/patch-src_VBox_Main_Makefile.kmk (new) | 10 + .../patch-src_VBox_Main_include_HostPower.h (new) | 20 + ...tch-src_VBox_Main_src-server_HostImpl.cpp (new) | 11 + ...src-server_freebsd_PerformanceFreeBSD.cpp (new) | 24 + ...ox_NetworkServices_Dhcpd_VBoxNetDhcpd.cpp (new) | 11 + ...ch-src_VBox_RDP_client-1.8.4_Makefile.kmk (new) | 13 + ...ntime_r0drv_freebsd_alloc-r0drv-freebsd.c (new) | 73 + ...time_r0drv_freebsd_assert-r0drv-freebsd.c (new) | 29 + ...time_r0drv_freebsd_memobj-r0drv-freebsd.c (new) | 412 ++++++ ...drv_freebsd_memuserkernel-r0drv-freebsd.c (new) | 22 + ..._Runtime_r0drv_freebsd_mp-r0drv-freebsd.c (new) | 92 ++ ...me_r0drv_freebsd_semevent-r0drv-freebsd.c (new) | 53 + ...drv_freebsd_semeventmulti-r0drv-freebsd.c (new) | 73 + ...0drv_freebsd_semfastmutex-r0drv-freebsd.c (new) | 59 + ...me_r0drv_freebsd_semmutex-r0drv-freebsd.c (new) | 80 + ...me_r0drv_freebsd_spinlock-r0drv-freebsd.c (new) | 30 + ...untime_r0drv_freebsd_the-freebsd-kernel.h (new) | 47 + ...time_r0drv_freebsd_thread-r0drv-freebsd.c (new) | 91 ++ ...ime_r0drv_freebsd_thread2-r0drv-freebsd.c (new) | 35 + ...untime_r0drv_freebsd_time-r0drv-freebsd.c (new) | 43 + ...ntime_r0drv_freebsd_timer-r0drv-freebsd.c (new) | 68 + ..._Runtime_r3_freebsd_systemmem-freebsd.cpp (new) | 39 + ...ntime_r3_posix_process-creation-posix.cpp (new) | 38 + ...MM_VMMR3_PDMAsyncCompletionFileNormal.cpp (new) | 59 + .../patch-src_VBox_VMM_VMMR3_PGMPhys.cpp (new) | 11 + .../patch-src_libs_xpcom18a4_Makefile.kmk (new) | 11 + ...com18a4_nsprpub_pr_src_pthreads_ptsynch.c (new) | 20 + ...libs_xpcom18a4_xpcom_io_nsLocalFileUnix.h (new) | 17 + .../virtualbox-ose-70/files/pkg-message.in (new) | 120 ++ .../virtualbox-ose-70/files/vboxheadless.in (new) | 140 ++ .../virtualbox-ose-70/files/vboxinit.in (new) | 91 ++ .../virtualbox-ose-70/files/vboxwatchdog.in (new) | 51 + .../virtualbox-ose-70/files/vboxwebsrv.in (new) | 47 + emulators/virtualbox-ose-70/pkg-descr (new) | 8 + emulators/virtualbox-ose-70/pkg-plist (new) | 616 ++++++++ emulators/virtualbox-ose-kmod-70/Makefile (new) | 112 ++ emulators/virtualbox-ose-kmod-70/distinfo (new) | 3 + .../files/pkg-message.in (new) | 10 + .../virtualbox-ose-kmod-70/files/vboxnet.in (new) | 67 + emulators/virtualbox-ose-kmod-70/pkg-descr (new) | 5 + emulators/virtualbox-ose-kmod-70/pkg-plist (new) | 6 + emulators/virtualbox-ose-nox11-70/Makefile (new) | 11 + 108 files changed, 10000 insertions(+)
(In reply to Vladimir Druzenko from comment #96) On my system this doesn't build with the devel/kBuild package currently available in 14.2-latest (kBuild-0.1.9998_15). I had to fetch devel/kBuild r3660 from ports to successfully build virtualbox-ose-70 (the new package shows up as kBuild-0.1.9998_16 once compiled).
(In reply to commit-hook from comment #103) This fails to build on 15-CURRENT with poudriere reporting missing header. kBuild: Compiling genalias - /wrkdirs/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/src/bldprogs/genalias.cpp /wrkdirs/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/src/bldprogs/genalias.cpp:36:10: fatal error: 'iprt/stdint.h' file not found 36 | #include <iprt/stdint.h> | ^~~~~~~~~~~~~~~ /wrkdirs/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/src/bldprogs/filesplitter.cpp:38:10: fatal error: 'iprt/string.h' file not found 38 | #include <iprt/string.h> | ^~~~~~~~~~~~~~~ 1 error generated. kmk: *** [/wrkdirs/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/obj/filesplitter/filesplitter.o] Error 1 The failing command: @c++ -c -O2 -g -pipe -Wshadow -Wall -Wextra -Wno-missing-field-initializers -Wno-unused -Wno-trigraphs -fdiagnostics-show-option -Wno-unused-parameter -Wno-language-extension-token -Wno-gnu-folding-constant -Wno-gnu-anonymous-struct -Wno-string-plus-int -Wno-nested-anon-types -Wno-variadic-macros -Wno-c++17-compat-mangling -Wno-long-long -Wno-variadic-macros -std=c++17 -O2 -fno-omit-frame-pointer -fno-strict-aliasing -m64 -Wp,-MD,/wrkdirs/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/obj/filesplitter/filesplitter.o.dep -Wp,-MT,/wrkdirs/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/obj/filesplitter/filesplitter.o -Wp,-MP -o /wrkdirs/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/obj/filesplitter/filesplitter.o /wrkdirs/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/src/bldprogs/filesplitter.cpp kmk: *** Waiting for unfinished jobs.... 1 error generated. kmk: *** [/wrkdirs/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/obj/genalias/genalias.o] Error 1 The failing command: @c++ -c -O2 -g -pipe -Wshadow -Wall -Wextra -Wno-missing-field-initializers -Wno-unused -Wno-trigraphs -fdiagnostics-show-option -Wno-unused-parameter -Wno-language-extension-token -Wno-gnu-folding-constant -Wno-gnu-anonymous-struct -Wno-string-plus-int -Wno-nested-anon-types -Wno-variadic-macros -Wno-c++17-compat-mangling -Wno-long-long -Wno-variadic-macros -std=c++17 -O2 -fno-omit-frame-pointer -fno-strict-aliasing -m64 -Wp,-MD,/wrkdirs/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/obj/genalias/genalias.o.dep -Wp,-MT,/wrkdirs/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/obj/genalias/genalias.o -Wp,-MP -o /wrkdirs/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/out/freebsd.amd64/release/obj/genalias/genalias.o /wrkdirs/usr/ports/emulators/virtualbox-ose-70/work/VirtualBox-7.0.24/src/bldprogs/genalias.cpp kmk: *** Exiting with status 2 *** Error code 2 Stop. make: stopped making "build" in /usr/ports/emulators/virtualbox-ose-70 =>> Cleaning up wrkdir ===> Cleaning for virtualbox-ose-70-7.0.24 build of emulators/virtualbox-ose-70 | virtualbox-ose-70-7.0.24 ended at Sun Feb 2 23:48:17 PST 2
(In reply to Cy Schubert from comment #105) Updating kBuild moved me past that error. John groenveld@acm.org