diff options
11 files changed, 169 insertions, 79 deletions
| diff --git a/emulators/Makefile b/emulators/Makefile index cee9f761a5a6..3e0d4fdd1675 100644 --- a/emulators/Makefile +++ b/emulators/Makefile @@ -161,9 +161,11 @@      SUBDIR += virtualbox-ose-71      SUBDIR += virtualbox-ose-72      SUBDIR += virtualbox-ose-additions +    SUBDIR += virtualbox-ose-additions-70      SUBDIR += virtualbox-ose-additions-71      SUBDIR += virtualbox-ose-additions-legacy      SUBDIR += virtualbox-ose-additions-nox11 +    SUBDIR += virtualbox-ose-additions-nox11-70      SUBDIR += virtualbox-ose-additions-nox11-71      SUBDIR += virtualbox-ose-additions-nox11-legacy      SUBDIR += virtualbox-ose-kmod diff --git a/emulators/virtualbox-ose-70/files/patch-src-VBox-Additions-common-VBoxGuest-VBoxGuest-freebsd.c b/emulators/virtualbox-ose-70/files/patch-src-VBox-Additions-common-VBoxGuest-VBoxGuest-freebsd.c index e790f372f95f..5ac0dc7e17c8 100644 --- a/emulators/virtualbox-ose-70/files/patch-src-VBox-Additions-common-VBoxGuest-VBoxGuest-freebsd.c +++ b/emulators/virtualbox-ose-70/files/patch-src-VBox-Additions-common-VBoxGuest-VBoxGuest-freebsd.c @@ -1,5 +1,5 @@ ---- src/VBox/Additions/common/VBoxGuest/VBoxGuest-freebsd.c.orig	2022-10-06 19:03:06.000000000 +0200 -+++ src/VBox/Additions/common/VBoxGuest/VBoxGuest-freebsd.c	2024-12-26 15:28:38.066230000 +0100 +--- src/VBox/Additions/common/VBoxGuest/VBoxGuest-freebsd.c.orig	2025-04-11 12:02:54 UTC ++++ src/VBox/Additions/common/VBoxGuest/VBoxGuest-freebsd.c  @@ -55,6 +55,7 @@   #include <sys/uio.h>   #include <sys/bus.h> @@ -16,7 +16,7 @@   #include <iprt/initterm.h>   #include <iprt/process.h>   #include <iprt/string.h> -@@ -112,8 +114,6 @@ +@@ -112,8 +114,6 @@ struct VBoxGuestDeviceState       struct resource   *pIrqRes;       /** Pointer to the IRQ handler. */       void              *pfnIrqHandler; @@ -25,7 +25,7 @@   }; -@@ -123,8 +123,7 @@ +@@ -123,8 +123,7 @@ struct VBoxGuestDeviceState   /*    * Character device file handlers.    */ @@ -35,7 +35,7 @@   static d_ioctl_t  vgdrvFreeBSDIOCtl;   static int        vgdrvFreeBSDIOCtlSlow(PVBOXGUESTSESSION pSession, u_long ulCmd, caddr_t pvData, struct thread *pTd);   static d_write_t  vgdrvFreeBSDWrite; -@@ -155,8 +154,7 @@ +@@ -155,8 +154,7 @@ static struct cdevsw    g_vgdrvFreeBSDChrDevSW =   {       .d_version =        D_VERSION,       .d_flags =          D_TRACKCLOSE | D_NEEDMINOR, @@ -45,7 +45,7 @@       .d_ioctl =          vgdrvFreeBSDIOCtl,       .d_read =           vgdrvFreeBSDRead,       .d_write =          vgdrvFreeBSDWrite, -@@ -164,81 +162,28 @@ +@@ -164,81 +162,28 @@ static struct cdevsw    g_vgdrvFreeBSDChrDevSW =       .d_name =           "vboxguest"   }; @@ -134,7 +134,7 @@   {       int                 rc;       PVBOXGUESTSESSION   pSession; -@@ -250,12 +195,6 @@ +@@ -250,12 +195,6 @@ static int vgdrvFreeBSDOpen(struct cdev *pDev, int fOp       LogFlow(("vgdrvFreeBSDOpen:\n"));       /* @@ -147,7 +147,7 @@        * Create a new session.        */       fRequestor = VMMDEV_REQUESTOR_USERMODE | VMMDEV_REQUESTOR_TRUST_NOT_GIVEN; -@@ -272,47 +211,20 @@ +@@ -272,14 +211,13 @@ static int vgdrvFreeBSDOpen(struct cdev *pDev, int fOp       rc = VGDrvCommonCreateUserSession(&g_DevExt, fRequestor, &pSession);       if (RT_SUCCESS(rc))       { @@ -168,10 +168,10 @@       }       LogRel(("vgdrvFreeBSDOpen: failed. rc=%d\n", rc)); -     return RTErrConvertToErrno(rc); +@@ -287,33 +225,6 @@ static int vgdrvFreeBSDOpen(struct cdev *pDev, int fOp   } --/** + /**  - * File close handler  - *  - */ @@ -179,7 +179,7 @@  -{  -    PVBOXGUESTSESSION pSession = (PVBOXGUESTSESSION)pDev->si_drv1;  -    Log(("vgdrvFreeBSDClose: fFile=%#x pSession=%p\n", fFile, pSession)); -  +-  -    /*  -     * Close the session if it's still hanging on to the device...  -     */ @@ -198,10 +198,11 @@  -}  -  - - /** +-/**    * I/O control request.    * -@@ -326,8 +238,12 @@ +  * @returns depends... +@@ -326,8 +237,12 @@ static int vgdrvFreeBSDIOCtl(struct cdev *pDev, u_long   static int vgdrvFreeBSDIOCtl(struct cdev *pDev, u_long ulCmd, caddr_t pvData, int fFile, struct thread *pTd)   {       PVBOXGUESTSESSION pSession; @@ -215,20 +216,25 @@       /*        * Deal with the fast ioctl path first.        */ -@@ -526,8 +442,10 @@ +@@ -522,12 +437,14 @@ static int vgdrvFreeBSDPoll(struct cdev *pDev, int fEv +  + static int vgdrvFreeBSDPoll(struct cdev *pDev, int fEvents, struct thread *td) + { +-    int fEventsProcessed; ++    PVBOXGUESTSESSION pSession; ++    int fEventsProcessed, rc;       LogFlow(("vgdrvFreeBSDPoll: fEvents=%d\n", fEvents));  -    PVBOXGUESTSESSION pSession = (PVBOXGUESTSESSION)pDev->si_drv1;  -    if (RT_UNLIKELY(!RT_VALID_PTR(pSession))) { -+  +    rc = devfs_get_cdevpriv((void **)&pSession);  +    if (rc) -+      { ++    {           Log(("vgdrvFreeBSDPoll: no state data for %s\n", devtoname(pDev)));           return (fEvents & (POLLHUP|POLLIN|POLLRDNORM|POLLOUT|POLLWRNORM));       } -@@ -568,11 +486,8 @@ +@@ -568,11 +485,8 @@ static int vgdrvFreeBSDDetach(device_t pDevice)       /*        * Reverse what we did in vgdrvFreeBSDAttach.        */ @@ -241,7 +247,7 @@       vgdrvFreeBSDRemoveIRQ(pDevice, pState);       if (pState->pVMMDevMemRes) -@@ -737,18 +652,21 @@ +@@ -737,18 +651,21 @@ static int vgdrvFreeBSDAttach(device_t pDevice)                       VGDrvCommonProcessOptionsFromHost(&g_DevExt);                       /* @@ -269,7 +275,7 @@                       vgdrvFreeBSDRemoveIRQ(pDevice, pState);                   }                   else -@@ -792,8 +710,12 @@ +@@ -792,8 +709,12 @@ static driver_t vgdrvFreeBSDDriver =       sizeof(struct VBoxGuestDeviceState),   }; diff --git a/emulators/virtualbox-ose-70/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-Makefile b/emulators/virtualbox-ose-70/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-Makefile index 476346a59b13..37c1596cfe87 100644 --- a/emulators/virtualbox-ose-70/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-Makefile +++ b/emulators/virtualbox-ose-70/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-Makefile @@ -1,15 +1,17 @@ ---- src/VBox/Additions/common/VBoxGuest/freebsd/Makefile.orig	2019-04-16 10:09:09 UTC +--- src/VBox/Additions/common/VBoxGuest/freebsd/Makefile.orig	2025-10-16 14:25:29 UTC  +++ src/VBox/Additions/common/VBoxGuest/freebsd/Makefile -@@ -25,7 +25,7 @@ +@@ -34,9 +34,8 @@ KMOD = vboxguest + # SPDX-License-Identifier: GPL-3.0-only OR CDDL-1.0   #   KMOD = vboxguest -  --CFLAGS += -DRT_OS_FREEBSD -DIN_RING0 -DIN_RT_R0 -DIN_SUP_R0 -DVBOX -DRT_WITH_VBOX -Iinclude -I. -Ir0drv -w -DVBGL_VBOXGUEST -DVBOX_WITH_HGCM -DVBOX_WITH_64_BITS_GUESTS  +CFLAGS += -DRT_OS_FREEBSD -DIN_RING0 -DIN_RT_R0 -DIN_GUEST -DIN_GUEST_R0 -DIN_SUP_R0 -DVBOX -DRT_WITH_VBOX -Iinclude -I. -Ir0drv -w -DVBGL_VBOXGUEST -DVBOX_WITH_HGCM -DVBOX_WITH_64_BITS_GUESTS +-CFLAGS += -DRT_OS_FREEBSD -DIN_RING0 -DIN_RT_R0 -DIN_SUP_R0 -DVBOX -DRT_WITH_VBOX -Iinclude -I. -Ir0drv -w -DVBGL_VBOXGUEST -DVBOX_WITH_HGCM -DVBOX_WITH_64_BITS_GUESTS +-   .if (${MACHINE_ARCH} == "i386")    CFLAGS += -DRT_ARCH_X86 -@@ -80,6 +80,7 @@ SRCS += \ + .elif (${MACHINE_ARCH} == "amd64") +@@ -91,6 +90,7 @@ SRCS += \   	handletable.c \   	handletablectx.c \   	once.c \ @@ -17,7 +19,7 @@   	thread.c   .PATH:	${.CURDIR}/common/string -@@ -147,6 +148,7 @@ SRCS += \ +@@ -163,6 +163,7 @@ SRCS += \   .PATH:	${.CURDIR}/r0drv   SRCS += \ @@ -25,3 +27,12 @@   	alloc-r0drv.c \   	initterm-r0drv.c \   	memobj-r0drv.c \ +@@ -196,7 +197,7 @@ SRCS += \ + SRCS += \ + 	log-vbox.c \ + 	logbackdoor.c \ +-	RTLogWriteVmm-amd64-x86. ++	RTLogWriteVmm-amd64-x86.c +  + .include <bsd.kmod.mk> +  diff --git a/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_freebsd_mount__vboxvfs_Makefile.kmk b/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_freebsd_mount__vboxvfs_Makefile.kmk index 270472c045e3..796aecabac8f 100644 --- a/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_freebsd_mount__vboxvfs_Makefile.kmk +++ b/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_freebsd_mount__vboxvfs_Makefile.kmk @@ -1,4 +1,4 @@ ---- src/VBox/Additions/freebsd/mount_vboxvfs/Makefile.kmk.orig	2025-05-11 03:54:13 UTC +--- src/VBox/Additions/freebsd/mount_vboxvfs/Makefile.kmk.orig	2025-10-24 13:49:31 UTC  +++ src/VBox/Additions/freebsd/mount_vboxvfs/Makefile.kmk  @@ -0,0 +1,28 @@  +# $Id: Makefile.kmk $ @@ -18,7 +18,7 @@  +CFLAGS+=-I$(MOUNT)  +  +PROGRAMS                += mount_vboxvfs -+mount_vboxvfs_TEMPLATE    = NewVBoxGuestR3Exe ++mount_vboxvfs_TEMPLATE    = VBoxGuestR3Exe  +mount_vboxvfs_SOURCES     = mount_vboxvfs.c  +  +ifdef HAVE_MNTOPTS_IN_LIBUTIL diff --git a/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_freebsd_vboxvfs_Makefile.kmk b/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_freebsd_vboxvfs_Makefile.kmk new file mode 100644 index 000000000000..679778e60181 --- /dev/null +++ b/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_freebsd_vboxvfs_Makefile.kmk @@ -0,0 +1,50 @@ +--- src/VBox/Additions/freebsd/vboxvfs/Makefile.kmk.orig	2025-10-22 19:18:12 UTC ++++ src/VBox/Additions/freebsd/vboxvfs/Makefile.kmk +@@ -43,32 +43,37 @@ vboxvfs_SOURCES       = \ + 	$(vboxvfs_0_OUTDIR) + vboxvfs_SOURCES       = \ + 	vboxvfs_vfsops.c \ +-	vboxvfs_vnops.c ++	bcmp.c \ ++	vboxvfs_vnops.c \ ++	vboxvfs_prov.c + vboxvfs_LIBS          = \ + 	$(VBOX_LIB_VBGL_R0) \ + 	$(VBOX_LIB_IPRT_GUEST_R0) + vboxvfs_DEPS          = \ +-	$$(vboxvfs_0_OUTDIR)/vnode_if.h \ +-	$$(vboxvfs_0_OUTDIR)/vnode_if_newproto.h \ +-	$$(vboxvfs_0_OUTDIR)/vnode_if_typedef.h ++	$(vboxvfs_0_OUTDIR)/vnode_if.h \ ++	$(vboxvfs_0_OUTDIR)/vnode_if_newproto.h \ ++	$(vboxvfs_0_OUTDIR)/vnode_if_typedef.h + vboxvfs_CLEAN        += $(vboxvfs_DEPS) +  + VBOX_AWK := /usr/bin/awk +  +-$$(vboxvfs_0_OUTDIR)/vnode_if.h: $(VBOX_FREEBSD_SRC)/kern/vnode_if.src ++$$(vboxvfs_0_OUTDIR): ++	$(QUIET)$(MKDIR) -p $(vboxvfs_0_OUTDIR) ++ ++$$(vboxvfs_0_OUTDIR)/vnode_if.h: $$(vboxvfs_0_OUTDIR) $(VBOX_FREEBSD_SRC)/kern/vnode_if.src + 	$(call MSG_TOOL,awk,VBoxGuest,$<,$@) + 	$(QUIET)$(VBOX_AWK) -f $(VBOX_FREEBSD_SRC)/tools/vnode_if.awk $(VBOX_FREEBSD_SRC)/kern/vnode_if.src -h +-	$(QUIET)$(MV) $(vboxvfs_0_OUTDIR)/vnode_if.h $(vboxvfs_0_OUTDIR)/vnode_if.h ++	$(QUIET)$(MV) vnode_if.h $(vboxvfs_0_OUTDIR)/vnode_if.h +  +-$$(vboxvfs_0_OUTDIR)/vnode_if_newproto.h: $(VBOX_FREEBSD_SRC)/kern/vnode_if.src ++$$(vboxvfs_0_OUTDIR)/vnode_if_newproto.h: $$(vboxvfs_0_OUTDIR) $(VBOX_FREEBSD_SRC)/kern/vnode_if.src + 	$(call MSG_TOOL,awk,VBoxGuest,$<,$@) + 	$(QUIET)$(VBOX_AWK) -f $(VBOX_FREEBSD_SRC)/tools/vnode_if.awk $(VBOX_FREEBSD_SRC)/kern/vnode_if.src -p +-	$(QUIET)$(MV) $(vboxvfs_0_OUTDIR)/vnode_if_newproto.h $(vboxvfs_0_OUTDIR)/vnode_if_newproto.h ++	$(QUIET)$(MV) vnode_if_newproto.h $(vboxvfs_0_OUTDIR)/vnode_if_newproto.h +  +-$$(vboxvfs_0_OUTDIR)/vnode_if_typedef.h: $(VBOX_FREEBSD_SRC)/kern/vnode_if.src ++$$(vboxvfs_0_OUTDIR)/vnode_if_typedef.h: $$(vboxvfs_0_OUTDIR) $(VBOX_FREEBSD_SRC)/kern/vnode_if.src + 	$(call MSG_TOOL,awk,VBoxGuest,$<,$@) + 	$(QUIET)$(VBOX_AWK) -f $(VBOX_FREEBSD_SRC)/tools/vnode_if.awk $(VBOX_FREEBSD_SRC)/kern/vnode_if.src -q +-	$(QUIET)$(MV) $(vboxvfs_0_OUTDIR)/vnode_if_typedef.h $(vboxvfs_0_OUTDIR)/vnode_if_typedef.h ++	$(QUIET)$(MV) vnode_if_typedef.h $(vboxvfs_0_OUTDIR)/vnode_if_typedef.h +  + include $(FILE_KBUILD_SUB_FOOTER) +  diff --git a/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_x11_vboxmouse_Makefile.kmk b/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_x11_vboxmouse_Makefile.kmk index afb19c804d7a..2d0377fb3e40 100644 --- a/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_x11_vboxmouse_Makefile.kmk +++ b/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_x11_vboxmouse_Makefile.kmk @@ -1,6 +1,6 @@ ---- src/VBox/Additions/x11/vboxmouse/Makefile.kmk.orig	2019-01-25 18:24:30 UTC +--- src/VBox/Additions/x11/vboxmouse/Makefile.kmk.orig	2025-10-16 14:25:37 UTC  +++ src/VBox/Additions/x11/vboxmouse/Makefile.kmk -@@ -227,10 +227,22 @@ endif # neq ($(KBUILD_TARGET),linux) +@@ -237,10 +237,22 @@ ifdef VBOX_USE_SYSTEM_XORG_HEADERS   ifdef VBOX_USE_SYSTEM_XORG_HEADERS @@ -10,7 +10,7 @@  - SYSMODS := $(filter-out vboxmouse_drv%,$(SYSMODS))  + ifeq ($(KBUILD_TARGET),freebsd)  +  DLLS += vboxmouse_drv_system -+  vboxmouse_drv_system_TEMPLATE = VBOXGUESTR3XORGMOD ++  vboxmouse_drv_system_TEMPLATE = VBoxGuestR3XOrgMod  +  vboxmouse_drv_system_DEFS := $(vboxmouse_drv_70_DEFS) NO_ANSIC  +  vboxmouse_drv_system_INCS := \  +	/usr/local/include/pixman-1 \ diff --git a/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_x11_vboxvideo_Makefile.kmk b/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_x11_vboxvideo_Makefile.kmk new file mode 100644 index 000000000000..38ef1ac68f9e --- /dev/null +++ b/emulators/virtualbox-ose-70/files/patch-src_VBox_Additions_x11_vboxvideo_Makefile.kmk @@ -0,0 +1,15 @@ +--- src/VBox/Additions/x11/vboxvideo/Makefile.kmk.orig	2025-10-22 19:22:45 UTC ++++ src/VBox/Additions/x11/vboxvideo/Makefile.kmk +@@ -415,9 +415,10 @@ ifdef VBOX_USE_SYSTEM_XORG_HEADERS +  vboxvideo_drv_system_INCS += \ +  	$(PATH_ROOT)/src/VBox/Runtime/include \ +  	$(VBOX_GRAPHICS_INCS) \ +- 	/usr/include/xorg \ +- 	/usr/include/pixman-1 ++ 	/usr/local/include/xorg \ ++ 	/usr/local/include/pixman-1 +  vboxvideo_drv_system_SOURCES := $(vboxvideo_drv_17_SOURCES) ++ vboxvideo_drv_system_LIBS += $(vboxvideo_drv_70_LIBS) + endif +  +  diff --git a/emulators/virtualbox-ose-70/files/patch-src_VBox_Runtime_r0drv_freebsd_memobj-r0drv-freebsd.c b/emulators/virtualbox-ose-70/files/patch-src_VBox_Runtime_r0drv_freebsd_memobj-r0drv-freebsd.c index cbdcb490764f..86e5984d6b82 100644 --- a/emulators/virtualbox-ose-70/files/patch-src_VBox_Runtime_r0drv_freebsd_memobj-r0drv-freebsd.c +++ b/emulators/virtualbox-ose-70/files/patch-src_VBox_Runtime_r0drv_freebsd_memobj-r0drv-freebsd.c @@ -11,16 +11,26 @@       switch (pMemFreeBSD->Core.enmType)       { -@@ -155,8 +157,6 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) +@@ -155,9 +157,7 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem)           case RTR0MEMOBJTYPE_LOCK:           {  -            vm_map_t pMap = kernel_map;  - -             if (pMemFreeBSD->Core.u.Lock.R0Process != NIL_RTR0PROCESS) +-            if (pMemFreeBSD->Core.u.Lock.R0Process != NIL_RTR0PROCESS) ++            if (pMemFreeBSD->Core.u.Lock.R0Process != NIL_RTR0PROCESS) {                   pMap = &((struct proc *)pMemFreeBSD->Core.u.Lock.R0Process)->p_vmspace->vm_map; -@@ -197,6 +197,7 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) +             rc = vm_map_unwire(pMap, +@@ -165,6 +165,7 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) +                                (vm_offset_t)pMemFreeBSD->Core.pv + pMemFreeBSD->Core.cb, +                                VM_MAP_WIRE_SYSTEM | VM_MAP_WIRE_NOHOLES); +             AssertMsg(rc == KERN_SUCCESS, ("%#x", rc)); ++	   } +             break; +         } +  +@@ -197,6 +198,7 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem)           case RTR0MEMOBJTYPE_PHYS_NC:           {               VM_OBJECT_WLOCK(pMemFreeBSD->pObject); @@ -28,7 +38,7 @@               vm_page_t pPage = vm_page_find_least(pMemFreeBSD->pObject, 0);   #if __FreeBSD_version < 1000000               vm_page_lock_queues(); -@@ -210,6 +211,14 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) +@@ -210,6 +212,14 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem)   #if __FreeBSD_version < 1000000               vm_page_unlock_queues();   #endif @@ -43,7 +53,7 @@               VM_OBJECT_WUNLOCK(pMemFreeBSD->pObject);               vm_object_deallocate(pMemFreeBSD->pObject);               break; -@@ -220,6 +229,7 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) +@@ -220,6 +230,7 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem)               return VERR_INTERNAL_ERROR;       } @@ -51,7 +61,7 @@       return VINF_SUCCESS;   } -@@ -329,7 +339,8 @@ static int rtR0MemObjFreeBSDAllocHelper(PRTR0MEMOBJFRE +@@ -329,7 +340,8 @@ static int rtR0MemObjFreeBSDAllocHelper(PRTR0MEMOBJFRE       size_t      cPages = atop(pMemFreeBSD->Core.cb);       int         rc; @@ -61,7 +71,7 @@       /* No additional object reference for auto-deallocation upon unmapping. */   #if __FreeBSD_version >= 1000055 -@@ -371,6 +382,7 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocPage(PPRTR0MEMOBJ +@@ -371,6 +383,7 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocPage(PPRTR0MEMOBJ   DECLHIDDEN(int) rtR0MemObjNativeAllocPage(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, bool fExecutable, const char *pszTag)   { @@ -69,7 +79,7 @@       PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)rtR0MemObjNew(sizeof(*pMemFreeBSD), RTR0MEMOBJTYPE_PAGE,                                                                          NULL, cb, pszTag);       if (pMemFreeBSD) -@@ -380,8 +392,10 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocPage(PPRTR0MEMOBJ +@@ -380,8 +393,10 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocPage(PPRTR0MEMOBJ               *ppMem = &pMemFreeBSD->Core;           else               rtR0MemObjDelete(&pMemFreeBSD->Core); @@ -80,7 +90,7 @@       return VERR_NO_MEMORY;   } -@@ -395,6 +409,7 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocLow(PPRTR0MEMOBJI +@@ -395,6 +410,7 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocLow(PPRTR0MEMOBJI   DECLHIDDEN(int) rtR0MemObjNativeAllocLow(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, bool fExecutable, const char *pszTag)   { @@ -88,7 +98,7 @@       PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)rtR0MemObjNew(sizeof(*pMemFreeBSD), RTR0MEMOBJTYPE_LOW, NULL, cb, pszTag);       if (pMemFreeBSD)       { -@@ -403,14 +418,17 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocLow(PPRTR0MEMOBJI +@@ -403,14 +419,17 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocLow(PPRTR0MEMOBJI               *ppMem = &pMemFreeBSD->Core;           else               rtR0MemObjDelete(&pMemFreeBSD->Core); @@ -106,7 +116,7 @@       PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)rtR0MemObjNew(sizeof(*pMemFreeBSD), RTR0MEMOBJTYPE_CONT,                                                                          NULL, cb, pszTag);       if (pMemFreeBSD) -@@ -423,8 +441,10 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocCont(PPRTR0MEMOBJ +@@ -423,8 +442,10 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocCont(PPRTR0MEMOBJ           }           else               rtR0MemObjDelete(&pMemFreeBSD->Core); @@ -117,7 +127,7 @@       return VERR_NO_MEMORY;   } -@@ -432,6 +452,7 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB +@@ -432,6 +453,7 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB   static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOBJINTERNAL ppMem, RTR0MEMOBJTYPE enmType, size_t cb,  RTHCPHYS PhysHighest,                                              size_t uAlignment, bool fContiguous, int rcNoMem, const char *pszTag)   { @@ -125,7 +135,7 @@       /* create the object. */       PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)rtR0MemObjNew(sizeof(*pMemFreeBSD), enmType, NULL, cb, pszTag);       if (pMemFreeBSD) -@@ -439,7 +460,8 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB +@@ -439,7 +461,8 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB           vm_paddr_t const VmPhysAddrHigh = PhysHighest != NIL_RTHCPHYS ? PhysHighest : ~(vm_paddr_t)0;           u_long const     cPages         = atop(cb); @@ -135,7 +145,7 @@           int rc = rtR0MemObjFreeBSDPhysAllocHelper(pMemFreeBSD->pObject, cPages, VmPhysAddrHigh,                                                     uAlignment, fContiguous, true, rcNoMem); -@@ -449,7 +471,7 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB +@@ -449,7 +472,7 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB               {                   Assert(enmType == RTR0MEMOBJTYPE_PHYS);                   VM_OBJECT_WLOCK(pMemFreeBSD->pObject); @@ -144,7 +154,7 @@                   VM_OBJECT_WUNLOCK(pMemFreeBSD->pObject);                   pMemFreeBSD->Core.u.Phys.fAllocated = true;               } -@@ -462,8 +484,10 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB +@@ -462,8 +485,10 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB               vm_object_deallocate(pMemFreeBSD->pObject);               rtR0MemObjDelete(&pMemFreeBSD->Core);           } @@ -155,7 +165,7 @@       return VERR_NO_MEMORY;   } -@@ -486,6 +510,7 @@ DECLHIDDEN(int) rtR0MemObjNativeEnterPhys(PPRTR0MEMOBJ +@@ -486,6 +511,7 @@ DECLHIDDEN(int) rtR0MemObjNativeEnterPhys(PPRTR0MEMOBJ                                             const char *pszTag)   {       AssertReturn(uCachePolicy == RTMEM_CACHE_POLICY_DONT_CARE, VERR_NOT_SUPPORTED); @@ -163,7 +173,7 @@       /* create the object. */       PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)rtR0MemObjNew(sizeof(*pMemFreeBSD), RTR0MEMOBJTYPE_PHYS, -@@ -497,8 +522,10 @@ DECLHIDDEN(int) rtR0MemObjNativeEnterPhys(PPRTR0MEMOBJ +@@ -497,8 +523,10 @@ DECLHIDDEN(int) rtR0MemObjNativeEnterPhys(PPRTR0MEMOBJ           pMemFreeBSD->Core.u.Phys.PhysBase = Phys;           pMemFreeBSD->Core.u.Phys.uCachePolicy = uCachePolicy;           *ppMem = &pMemFreeBSD->Core; @@ -174,7 +184,7 @@       return VERR_NO_MEMORY;   } -@@ -510,6 +537,7 @@ static int rtR0MemObjNativeLockInMap(PPRTR0MEMOBJINTER +@@ -510,6 +538,7 @@ static int rtR0MemObjNativeLockInMap(PPRTR0MEMOBJINTER                                        vm_offset_t AddrStart, size_t cb, uint32_t fAccess,                                        RTR0PROCESS R0Process, int fFlags, const char *pszTag)   { @@ -182,7 +192,7 @@       int rc;       NOREF(fAccess); -@@ -519,21 +547,28 @@ static int rtR0MemObjNativeLockInMap(PPRTR0MEMOBJINTER +@@ -519,21 +548,28 @@ static int rtR0MemObjNativeLockInMap(PPRTR0MEMOBJINTER       if (!pMemFreeBSD)           return VERR_NO_MEMORY; @@ -219,7 +229,7 @@       return VERR_NO_MEMORY;/** @todo fix mach -> vbox error conversion for freebsd. */   } -@@ -573,6 +608,7 @@ static int rtR0MemObjNativeReserveInMap(PPRTR0MEMOBJIN +@@ -573,6 +609,7 @@ static int rtR0MemObjNativeReserveInMap(PPRTR0MEMOBJIN   static int rtR0MemObjNativeReserveInMap(PPRTR0MEMOBJINTERNAL ppMem, void *pvFixed, size_t cb, size_t uAlignment,                                           RTR0PROCESS R0Process, vm_map_t pMap, const char *pszTag)   { @@ -227,7 +237,7 @@       int rc;       /* -@@ -631,11 +667,13 @@ static int rtR0MemObjNativeReserveInMap(PPRTR0MEMOBJIN +@@ -631,11 +668,13 @@ static int rtR0MemObjNativeReserveInMap(PPRTR0MEMOBJIN           pMemFreeBSD->Core.pv = (void *)MapAddress;           pMemFreeBSD->Core.u.ResVirt.R0Process = R0Process;           *ppMem = &pMemFreeBSD->Core; @@ -241,7 +251,7 @@       return rc;   } -@@ -659,6 +697,8 @@ DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJ +@@ -659,6 +698,8 @@ DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJ   DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJINTERNAL ppMem, RTR0MEMOBJ pMemToMap, void *pvFixed, size_t uAlignment,                                             unsigned fProt, size_t offSub, size_t cbSub, const char *pszTag)   { @@ -250,7 +260,7 @@   //  AssertMsgReturn(!offSub && !cbSub, ("%#x %#x\n", offSub, cbSub), VERR_NOT_SUPPORTED);       AssertMsgReturn(pvFixed == (void *)-1, ("%p\n", pvFixed), VERR_NOT_SUPPORTED); -@@ -713,6 +753,7 @@ DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJ +@@ -713,6 +754,7 @@ DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJ               Assert((vm_offset_t)pMemFreeBSD->Core.pv == Addr);               pMemFreeBSD->Core.u.Mapping.R0Process = NIL_RTR0PROCESS;               *ppMem = &pMemFreeBSD->Core; @@ -258,7 +268,7 @@               return VINF_SUCCESS;           }           rc = vm_map_remove(kernel_map, Addr, Addr + cbSub); -@@ -721,6 +762,7 @@ DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJ +@@ -721,6 +763,7 @@ DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJ       else           vm_object_deallocate(pMemToMapFreeBSD->pObject); @@ -266,7 +276,7 @@       return VERR_NO_MEMORY;   } -@@ -728,6 +770,8 @@ DECLHIDDEN(int) rtR0MemObjNativeMapUser(PPRTR0MEMOBJIN +@@ -728,6 +771,8 @@ DECLHIDDEN(int) rtR0MemObjNativeMapUser(PPRTR0MEMOBJIN   DECLHIDDEN(int) rtR0MemObjNativeMapUser(PPRTR0MEMOBJINTERNAL ppMem, RTR0MEMOBJ pMemToMap, RTR3PTR R3PtrFixed, size_t uAlignment,                                           unsigned fProt, RTR0PROCESS R0Process, size_t offSub, size_t cbSub, const char *pszTag)   { @@ -275,7 +285,7 @@       /*        * Check for unsupported stuff.        */ -@@ -785,44 +829,50 @@ DECLHIDDEN(int) rtR0MemObjNativeMapUser(PPRTR0MEMOBJIN +@@ -785,44 +830,50 @@ DECLHIDDEN(int) rtR0MemObjNativeMapUser(PPRTR0MEMOBJIN       if (rc == KERN_SUCCESS)       { @@ -330,7 +340,7 @@       if ((fProt & RTMEM_PROT_NONE) == RTMEM_PROT_NONE)           ProtectionFlags = VM_PROT_NONE; -@@ -833,7 +883,12 @@ DECLHIDDEN(int) rtR0MemObjNativeProtect(PRTR0MEMOBJINT +@@ -833,7 +884,12 @@ DECLHIDDEN(int) rtR0MemObjNativeProtect(PRTR0MEMOBJINT       if ((fProt & RTMEM_PROT_EXEC) == RTMEM_PROT_EXEC)           ProtectionFlags |= VM_PROT_EXECUTE; @@ -343,7 +353,7 @@       if (krc == KERN_SUCCESS)           return VINF_SUCCESS; -@@ -858,11 +913,19 @@ DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(P +@@ -858,11 +914,19 @@ DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(P               vm_offset_t pb = (vm_offset_t)pMemFreeBSD->Core.pv + ptoa(iPage); @@ -367,7 +377,7 @@           }           case RTR0MEMOBJTYPE_MAPPING: -@@ -871,11 +934,15 @@ DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(P +@@ -871,11 +935,15 @@ DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(P               if (pMemFreeBSD->Core.u.Mapping.R0Process != NIL_RTR0PROCESS)               { @@ -384,7 +394,7 @@               }               return vtophys(pb);           } -@@ -886,9 +953,11 @@ DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(P +@@ -886,9 +954,11 @@ DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(P           {               RTHCPHYS addr; diff --git a/emulators/virtualbox-ose-additions-70/Makefile b/emulators/virtualbox-ose-additions-70/Makefile index 3a252cd3362b..4ad0c6e541fa 100644 --- a/emulators/virtualbox-ose-additions-70/Makefile +++ b/emulators/virtualbox-ose-additions-70/Makefile @@ -1,9 +1,9 @@  PORTNAME=	virtualbox-ose -DISTVERSION=	7.1.14 +DISTVERSION=	7.0.26  PORTREVISION?=	0  CATEGORIES=	emulators  MASTER_SITES=	https://download.virtualbox.org/virtualbox/${DISTVERSION}/ -PKGNAMESUFFIX?=	-additions-71 +PKGNAMESUFFIX?=	-additions-70  DISTNAME=	VirtualBox-${DISTVERSION}  MAINTAINER=	vbox@FreeBSD.org @@ -19,7 +19,7 @@ BUILD_DEPENDS=	yasm:devel/yasm \  		kmk:devel/kBuild \  		xsltproc:textproc/libxslt -USES=		compiler:c++17-lang cpe iconv kmod tar:bzip2 +USES=		compiler:c++14-lang cpe iconv kmod tar:bzip2  CPE_VENDOR=	oracle  CPE_PRODUCT=	vm_virtualbox  USE_RC_SUBR=	vboxguest vboxservice @@ -37,18 +37,14 @@ CONFIGURE_ARGS+=	--nofatal --with-gcc="${CC}" --with-g++="${CXX}"  MAKE_JOBS_UNSAFE=	yes -CONFLICTS_INSTALL=	virtualbox-ose-additions-legacy \ -			virtualbox-ose-additions-nox11-legacy \ -			virtualbox-ose-additions \ +CONFLICTS_INSTALL=	virtualbox-ose-additions \  			virtualbox-ose-additions-nox11 \ -			virtualbox-ose-additions-70 \ -			virtualbox-ose-additions-nox11-70 \ -			virtualbox-ose-additions-72 \ -			virtualbox-ose-additions-nox11-72 +			virtualbox-ose-additions-legacy \ +			virtualbox-ose-additions-nox11-legacy -PATCHDIR=		${.CURDIR}/../${PORTNAME}-71/files +PATCHDIR=		${.CURDIR}/../${PORTNAME}-70/files  EXTRACT_AFTER_ARGS=	--exclude tools/*.x86 --exclude tools/*.amd64 --exclude Firmware -PORTSCOUT=		limit:^7\.1\. +PORTSCOUT=		limit:^7\.0\.  WRKSRC=			${WRKDIR}/VirtualBox-${DISTVERSION} @@ -70,9 +66,9 @@ X11_VARS=		VBOX_WITH_X11=1  .include <bsd.port.options.mk>  .if ${SLAVE_PORT} == no -CONFLICTS_INSTALL+=	virtualbox-ose-additions-nox11-71 +CONFLICTS_INSTALL+=	virtualbox-ose-additions-nox11-70  .else -CONFLICTS_INSTALL+=	virtualbox-ose-additions-71 +CONFLICTS_INSTALL+=	virtualbox-ose-additions-70  .endif  VIDEODIR=	${PREFIX}/lib/xorg/modules/drivers diff --git a/emulators/virtualbox-ose-additions-70/distinfo b/emulators/virtualbox-ose-additions-70/distinfo index 904760a18c0f..644d77cfbd21 100644 --- a/emulators/virtualbox-ose-additions-70/distinfo +++ b/emulators/virtualbox-ose-additions-70/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1761146098 -SHA256 (VirtualBox-7.1.14.tar.bz2) = 6a4eea884cd98049a5357133b718078d8aaae68047836a3f86cd5904336d6218 -SIZE (VirtualBox-7.1.14.tar.bz2) = 216819853 +TIMESTAMP = 1745631388 +SHA256 (VirtualBox-7.0.26.tar.bz2) = 8a6a83dd09e65a4aff85ba0df6bb1ba22c22f7f0923d86e4b130813d4a28c5db +SIZE (VirtualBox-7.0.26.tar.bz2) = 174650718 diff --git a/emulators/virtualbox-ose-additions-nox11-70/Makefile b/emulators/virtualbox-ose-additions-nox11-70/Makefile index ef057aa1f5f2..a9a2be2575ba 100644 --- a/emulators/virtualbox-ose-additions-nox11-70/Makefile +++ b/emulators/virtualbox-ose-additions-nox11-70/Makefile @@ -1,7 +1,7 @@  PORTREVISION=	0 -PKGNAMESUFFIX=	-additions-nox11-71 +PKGNAMESUFFIX=	-additions-nox11-70 -MASTERDIR=	${.CURDIR}/../virtualbox-ose-additions-71 +MASTERDIR=	${.CURDIR}/../virtualbox-ose-additions-70  OPTIONS_EXCLUDE=	DBUS DEBUG OPENGL X11 | 
