diff options
author | Daniel Bermond | 2021-01-22 22:58:51 +0000 |
---|---|---|
committer | Daniel Bermond | 2021-01-22 22:58:51 +0000 |
commit | b338b94f96844021ed3873eaa4bf7a930b1e661e (patch) | |
tree | e91f77134f3b19ff3ac99df56f85b6f0ae12958e | |
parent | 051dbb4b258b502ad0940a46d5789831086c2968 (diff) | |
download | aur-b338b94f96844021ed3873eaa4bf7a930b1e661e.tar.gz |
Update to version 6.1.18
-rw-r--r-- | .SRCINFO | 18 | ||||
-rw-r--r-- | 020-linux-5.10.patch | 93 | ||||
-rw-r--r-- | PKGBUILD | 17 |
3 files changed, 15 insertions, 113 deletions
@@ -1,14 +1,14 @@ pkgbase = virtualbox-bin pkgdesc = Powerful x86 virtualization for enterprise as well as home use (Oracle branded non-OSE) - pkgver = 6.1.16 - pkgrel = 2 + pkgver = 6.1.18 + pkgrel = 1 url = https://www.virtualbox.org/ arch = x86_64 license = GPL2 makedepends = python - noextract = VirtualBoxSDK-6.1.16-140961.zip - source = http://download.virtualbox.org/virtualbox/6.1.16/VirtualBox-6.1.16-140961-Linux_amd64.run - source = https://download.virtualbox.org/virtualbox/6.1.16/VirtualBoxSDK-6.1.16-140961.zip + noextract = VirtualBoxSDK-6.1.18-142142.zip + source = http://download.virtualbox.org/virtualbox/6.1.18/VirtualBox-6.1.18-142142-Linux_amd64.run + source = https://download.virtualbox.org/virtualbox/6.1.18/VirtualBoxSDK-6.1.18-142142.zip source = VBoxAuth-r83509.h::https://www.virtualbox.org/svn/vbox/trunk/include/VBox/VBoxAuth.h?p=83509 source = VBoxAuthPAM-r83509.c::https://www.virtualbox.org/svn/vbox/trunk/src/VBox/HostServices/auth/pam/VBoxAuthPAM.c?p=83509 source = VBoxAuthSimple-r83509.cpp::https://www.virtualbox.org/svn/vbox/trunk/src/VBox/HostServices/auth/simple/VBoxAuthSimple.cpp?p=83509 @@ -19,9 +19,8 @@ pkgbase = virtualbox-bin source = virtualbox.sysusers source = LICENSE.sdk source = 013-Makefile.patch - source = 020-linux-5.10.patch - sha256sums = 35406e85a96ecf180b13145614230bae6c171e31a1f66263bf4c2b74bf6709e6 - sha256sums = 0dc5a55fbf40e5120008a4148df1e9312bf0aa974cfb96f49e2947e20d408d47 + sha256sums = 30bdda32fcf3a05168f6f427e5b08e2850d97782201c31191080b8702021bee1 + sha256sums = 49f8396e2a3295682f36250df91f4ffd64696cbc661ad03e8e3726459ac49b7f sha256sums = 61eab70173ec0c4959ec3b8bf9fa19cfac49bb223a0bb041fe12aa14742db15a sha256sums = f54c38e2d112e0221daa1ddd563a260d18d7d510c485a7d27c317d379e06ff79 sha256sums = 2ef58e7f24ed9114dbf29dfa77372b5e15962a2244315ffbfb592cdc10920ad8 @@ -32,7 +31,6 @@ pkgbase = virtualbox-bin sha256sums = 2101ebb58233bbfadf3aa74381f22f7e7e508559d2b46387114bc2d8e308554c sha256sums = 09335d7d1075df02d29cec13119538134efdf43ea73a93b0f89d0d7d4b6625a1 sha256sums = 3c2089575e8c03b7517fe176e65168e15fb7aefe7e71224bf264d21812dbc635 - sha256sums = 5cbe28efb3ad6538e94bf5a40fe5be65a9f0e979ba67d9d8440817a2a259dd91 pkgname = virtualbox-bin depends = device-mapper @@ -49,7 +47,7 @@ pkgname = virtualbox-bin optdepends = virtualbox-bin-guest-iso: for guest additions CD image optdepends = virtualbox-bin-sdk: for the software developer kit optdepends = virtualbox-ext-oracle: for Oracle extensions pack - provides = virtualbox=6.1.16 + provides = virtualbox=6.1.18 provides = virtualbox-host-dkms provides = VIRTUALBOX-HOST-MODULES conflicts = virtualbox diff --git a/020-linux-5.10.patch b/020-linux-5.10.patch deleted file mode 100644 index f56615c1773f..000000000000 --- a/020-linux-5.10.patch +++ /dev/null @@ -1,93 +0,0 @@ ---- a/src/vboxhost/vboxdrv/r0drv/linux/memobj-r0drv-linux.c -+++ b/src/vboxhost/vboxdrv/r0drv/linux/memobj-r0drv-linux.c -@@ -56,9 +56,12 @@ - * Whether we use alloc_vm_area (3.2+) for executable memory. - * This is a must for 5.8+, but we enable it all the way back to 3.2.x for - * better W^R compliance (fExecutable flag). */ --#if RTLNX_VER_MIN(3,2,0) || defined(DOXYGEN_RUNNING) -+#if RTLNX_VER_RANGE(3,2,0, 5,10,0) || defined(DOXYGEN_RUNNING) - # define IPRT_USE_ALLOC_VM_AREA_FOR_EXEC - #endif -+#if RTLNX_VER_MIN(5,10,0) || defined(DOXYGEN_RUNNING) -+# define IPRT_USE_APPLY_TO_PAGE_RANGE_FOR_EXEC -+#endif - - /* - * 2.6.29+ kernels don't work with remap_pfn_range() anymore because -@@ -502,6 +505,42 @@ static void rtR0MemObjLinuxFreePages(PRTR0MEMOBJLNX pMemLnx) - } - - -+#ifdef IPRT_USE_APPLY_TO_PAGE_RANGE_FOR_EXEC -+/** -+ * User data passed to the apply_to_page_range() callback. -+ */ -+typedef struct LNXAPPLYPGRANGE -+{ -+ /** Pointer to the memory object. */ -+ PRTR0MEMOBJLNX pMemLnx; -+ /** The page protection flags to apply. */ -+ pgprot_t fPg; -+} LNXAPPLYPGRANGE; -+/** Pointer to the user data. */ -+typedef LNXAPPLYPGRANGE *PLNXAPPLYPGRANGE; -+/** Pointer to the const user data. */ -+typedef const LNXAPPLYPGRANGE *PCLNXAPPLYPGRANGE; -+ -+/** -+ * Callback called in apply_to_page_range(). -+ * -+ * @returns Linux status code. -+ * @param pPte Pointer to the page table entry for the given address. -+ * @param uAddr The address to apply the new protection to. -+ * @param pvUser The opaque user data. -+ */ -+static DECLCALLBACK(int) rtR0MemObjLinuxApplyPageRange(pte_t *pPte, unsigned long uAddr, void *pvUser) -+{ -+ PCLNXAPPLYPGRANGE pArgs = (PCLNXAPPLYPGRANGE)pvUser; -+ PRTR0MEMOBJLNX pMemLnx = pArgs->pMemLnx; -+ uint32_t idxPg = (uAddr - (unsigned long)pMemLnx->Core.pv) >> PAGE_SHIFT; -+ -+ set_pte(pPte, mk_pte(pMemLnx->apPages[idxPg], pArgs->fPg)); -+ return 0; -+} -+#endif -+ -+ - /** - * Maps the allocation into ring-0. - * -@@ -584,6 +623,11 @@ static int rtR0MemObjLinuxVMap(PRTR0MEMOBJLNX pMemLnx, bool fExecutable) - else - # endif - { -+# if defined(IPRT_USE_APPLY_TO_PAGE_RANGE_FOR_EXEC) -+ if (fExecutable) -+ pgprot_val(fPg) |= _PAGE_NX; /* Uses RTR0MemObjProtect to clear NX when memory ready, W^X fashion. */ -+# endif -+ - # ifdef VM_MAP - pMemLnx->Core.pv = vmap(&pMemLnx->apPages[0], pMemLnx->cPages, VM_MAP, fPg); - # else -@@ -1851,6 +1895,21 @@ DECLHIDDEN(int) rtR0MemObjNativeProtect(PRTR0MEMOBJINTERNAL pMem, size_t offSub, - preempt_enable(); - return VINF_SUCCESS; - } -+# elif defined(IPRT_USE_APPLY_TO_PAGE_RANGE_FOR_EXEC) -+ PRTR0MEMOBJLNX pMemLnx = (PRTR0MEMOBJLNX)pMem; -+ if ( pMemLnx->fExecutable -+ && pMemLnx->fMappedToRing0) -+ { -+ LNXAPPLYPGRANGE Args; -+ Args.pMemLnx = pMemLnx; -+ Args.fPg = rtR0MemObjLinuxConvertProt(fProt, true /*fKernel*/); -+ int rcLnx = apply_to_page_range(current->active_mm, (unsigned long)pMemLnx->Core.pv + offSub, cbSub, -+ rtR0MemObjLinuxApplyPageRange, (void *)&Args); -+ if (rcLnx) -+ return VERR_NOT_SUPPORTED; -+ -+ return VINF_SUCCESS; -+ } - # endif - - NOREF(pMem); @@ -6,10 +6,10 @@ pkgbase=virtualbox-bin pkgname=('virtualbox-bin' 'virtualbox-bin-guest-iso' 'virtualbox-bin-sdk') -pkgver=6.1.16 -_build=140961 +pkgver=6.1.18 +_build=142142 _rev=83509 -pkgrel=2 +pkgrel=1 pkgdesc='Powerful x86 virtualization for enterprise as well as home use (Oracle branded non-OSE)' arch=('x86_64') url='https://www.virtualbox.org/' @@ -27,11 +27,10 @@ source=("http://download.virtualbox.org/virtualbox/${pkgver}/VirtualBox-${pkgver 'vboxweb.service' 'virtualbox.sysusers' 'LICENSE.sdk' - '013-Makefile.patch' - '020-linux-5.10.patch') + '013-Makefile.patch') noextract=("VirtualBoxSDK-${pkgver}-${_build}.zip") -sha256sums=('35406e85a96ecf180b13145614230bae6c171e31a1f66263bf4c2b74bf6709e6' - '0dc5a55fbf40e5120008a4148df1e9312bf0aa974cfb96f49e2947e20d408d47' +sha256sums=('30bdda32fcf3a05168f6f427e5b08e2850d97782201c31191080b8702021bee1' + '49f8396e2a3295682f36250df91f4ffd64696cbc661ad03e8e3726459ac49b7f' '61eab70173ec0c4959ec3b8bf9fa19cfac49bb223a0bb041fe12aa14742db15a' 'f54c38e2d112e0221daa1ddd563a260d18d7d510c485a7d27c317d379e06ff79' '2ef58e7f24ed9114dbf29dfa77372b5e15962a2244315ffbfb592cdc10920ad8' @@ -41,8 +40,7 @@ sha256sums=('35406e85a96ecf180b13145614230bae6c171e31a1f66263bf4c2b74bf6709e6' 'e6e875ef186578b53106d7f6af48e426cdaf1b4e86834f01696b8ef1c685787f' '2101ebb58233bbfadf3aa74381f22f7e7e508559d2b46387114bc2d8e308554c' '09335d7d1075df02d29cec13119538134efdf43ea73a93b0f89d0d7d4b6625a1' - '3c2089575e8c03b7517fe176e65168e15fb7aefe7e71224bf264d21812dbc635' - '5cbe28efb3ad6538e94bf5a40fe5be65a9f0e979ba67d9d8440817a2a259dd91') + '3c2089575e8c03b7517fe176e65168e15fb7aefe7e71224bf264d21812dbc635') prepare() { local _extractdir="${pkgname}-${pkgver}/VirtualBox-extracted" @@ -60,7 +58,6 @@ prepare() { # fix dkms build patch -d "$_extractdir" -Np1 -i "${srcdir}/013-Makefile.patch" - patch -d "$_extractdir" -Np1 -i "${srcdir}/020-linux-5.10.patch" } build() { |