Date: Mon, 25 Mar 2013 08:02:47 +0000 (UTC) From: Bernhard Froehlich <decke@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r315200 - in head/emulators/virtualbox-ose-kmod: . files Message-ID: <201303250802.r2P82lUm027358@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: decke Date: Mon Mar 25 08:02:47 2013 New Revision: 315200 URL: http://svnweb.freebsd.org/changeset/ports/315200 Log: - Fix VM_OBJECT patch to properly use WLOCK/WUNLOCK. Reported by: Ivan Klymenko <fidaj@ukr.net> Thanks to: Konstantin Belousov <kib@FreeBSD.org> See: http://lists.freebsd.org/pipermail/freebsd-ports/2013-March/082432.html Modified: head/emulators/virtualbox-ose-kmod/Makefile head/emulators/virtualbox-ose-kmod/files/patch-src-VBox-Runtime-r0drv-freebsd-memobj-r0drv-freebsd_VM_OBJECT_RENAME.c Modified: head/emulators/virtualbox-ose-kmod/Makefile ============================================================================== --- head/emulators/virtualbox-ose-kmod/Makefile Mon Mar 25 07:03:36 2013 (r315199) +++ head/emulators/virtualbox-ose-kmod/Makefile Mon Mar 25 08:02:47 2013 (r315200) @@ -3,7 +3,7 @@ PORTNAME= virtualbox-ose DISTVERSION= 4.2.6 -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= emulators kld MASTER_SITES= http://download.virtualbox.org/virtualbox/${DISTVERSION}/ \ http://tmp.chruetertee.ch/ \ Modified: head/emulators/virtualbox-ose-kmod/files/patch-src-VBox-Runtime-r0drv-freebsd-memobj-r0drv-freebsd_VM_OBJECT_RENAME.c ============================================================================== --- head/emulators/virtualbox-ose-kmod/files/patch-src-VBox-Runtime-r0drv-freebsd-memobj-r0drv-freebsd_VM_OBJECT_RENAME.c Mon Mar 25 07:03:36 2013 (r315199) +++ head/emulators/virtualbox-ose-kmod/files/patch-src-VBox-Runtime-r0drv-freebsd-memobj-r0drv-freebsd_VM_OBJECT_RENAME.c Mon Mar 25 08:02:47 2013 (r315200) @@ -7,7 +7,7 @@ $FreeBSD$ case RTR0MEMOBJTYPE_PHYS_NC: { +#if __FreeBSD_version >= 1000030 -+ VM_OBJECT_RLOCK(pMemFreeBSD->pObject); ++ VM_OBJECT_WLOCK(pMemFreeBSD->pObject); +#else VM_OBJECT_LOCK(pMemFreeBSD->pObject); +#endif @@ -19,7 +19,7 @@ $FreeBSD$ vm_page_unlock_queues(); #endif +#if __FreeBSD_version >= 1000030 -+ VM_OBJECT_RUNLOCK(pMemFreeBSD->pObject); ++ VM_OBJECT_WUNLOCK(pMemFreeBSD->pObject); +#else VM_OBJECT_UNLOCK(pMemFreeBSD->pObject); +#endif @@ -32,14 +32,14 @@ $FreeBSD$ while (cTries <= 1) { +#if __FreeBSD_version >= 1000030 -+ VM_OBJECT_RLOCK(pObject); ++ VM_OBJECT_WLOCK(pObject); +#else VM_OBJECT_LOCK(pObject); +#endif pPages = vm_page_alloc_contig(pObject, iPIndex, fFlags, cPages, 0, VmPhysAddrHigh, uAlignment, 0, VM_MEMATTR_DEFAULT); +#if __FreeBSD_version >= 1000030 -+ VM_OBJECT_RUNLOCK(pObject); ++ VM_OBJECT_WUNLOCK(pObject); +#else VM_OBJECT_UNLOCK(pObject); +#endif @@ -51,7 +51,7 @@ $FreeBSD$ if (!pPages) return pPages; +#if __FreeBSD_version >= 1000030 -+ VM_OBJECT_RLOCK(pObject); ++ VM_OBJECT_WLOCK(pObject); +#else VM_OBJECT_LOCK(pObject); +#endif @@ -63,7 +63,7 @@ $FreeBSD$ } } +#if __FreeBSD_version >= 1000030 -+ VM_OBJECT_RUNLOCK(pObject); ++ VM_OBJECT_WUNLOCK(pObject); +#else VM_OBJECT_UNLOCK(pObject); +#endif @@ -75,7 +75,7 @@ $FreeBSD$ { /* Free all allocated pages */ +#if __FreeBSD_version >= 1000030 -+ VM_OBJECT_RLOCK(pObject); ++ VM_OBJECT_WLOCK(pObject); +#else VM_OBJECT_LOCK(pObject); +#endif @@ -87,7 +87,7 @@ $FreeBSD$ #endif } +#if __FreeBSD_version >= 1000030 -+ VM_OBJECT_RUNLOCK(pObject); ++ VM_OBJECT_WUNLOCK(pObject); +#else VM_OBJECT_UNLOCK(pObject); +#endif @@ -99,13 +99,13 @@ $FreeBSD$ { Assert(enmType == RTR0MEMOBJTYPE_PHYS); +#if __FreeBSD_version >= 1000030 -+ VM_OBJECT_RLOCK(pMemFreeBSD->pObject); ++ VM_OBJECT_WLOCK(pMemFreeBSD->pObject); +#else VM_OBJECT_LOCK(pMemFreeBSD->pObject); +#endif pMemFreeBSD->Core.u.Phys.PhysBase = VM_PAGE_TO_PHYS(vm_page_find_least(pMemFreeBSD->pObject, 0)); +#if __FreeBSD_version >= 1000030 -+ VM_OBJECT_RUNLOCK(pMemFreeBSD->pObject); ++ VM_OBJECT_WUNLOCK(pMemFreeBSD->pObject); +#else VM_OBJECT_UNLOCK(pMemFreeBSD->pObject); +#endif @@ -117,13 +117,13 @@ $FreeBSD$ { RTHCPHYS addr; +#if __FreeBSD_version >= 1000030 -+ VM_OBJECT_RLOCK(pMemFreeBSD->pObject); ++ VM_OBJECT_WLOCK(pMemFreeBSD->pObject); +#else VM_OBJECT_LOCK(pMemFreeBSD->pObject); +#endif addr = VM_PAGE_TO_PHYS(vm_page_lookup(pMemFreeBSD->pObject, iPage)); +#if __FreeBSD_version >= 1000030 -+ VM_OBJECT_RUNLOCK(pMemFreeBSD->pObject); ++ VM_OBJECT_WUNLOCK(pMemFreeBSD->pObject); +#else VM_OBJECT_UNLOCK(pMemFreeBSD->pObject); +#endif
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201303250802.r2P82lUm027358>