summaryrefslogtreecommitdiff
path: root/app-emulation/virtualbox-modules/files
diff options
context:
space:
mode:
authorV3n3RiX <venerix@rogentos.ro>2015-07-12 12:02:24 +0100
committerV3n3RiX <venerix@rogentos.ro>2015-07-12 12:02:24 +0100
commit036bf223e7fcb4d26f575f641a41ba82c2997f30 (patch)
treea05dc62d848ce2887a4c2fab4833976f4982ba3b /app-emulation/virtualbox-modules/files
parent9cb2868c054569a17ed61d112aecdaa5a6d3ca23 (diff)
here we go...virtualbox-bin 5.0.0 && virtualbox-modules 5.0.0
Diffstat (limited to 'app-emulation/virtualbox-modules/files')
-rwxr-xr-xapp-emulation/virtualbox-modules/files/create_vbox_modules_tarball.sh29
-rw-r--r--app-emulation/virtualbox-modules/files/virtualbox-modules-3.17.patch49
-rw-r--r--app-emulation/virtualbox-modules/files/virtualbox-modules-4.1.4-pax-const.patch48
-rw-r--r--app-emulation/virtualbox-modules/files/virtualbox.conf3
4 files changed, 129 insertions, 0 deletions
diff --git a/app-emulation/virtualbox-modules/files/create_vbox_modules_tarball.sh b/app-emulation/virtualbox-modules/files/create_vbox_modules_tarball.sh
new file mode 100755
index 00000000..756d2435
--- /dev/null
+++ b/app-emulation/virtualbox-modules/files/create_vbox_modules_tarball.sh
@@ -0,0 +1,29 @@
+#!/bin/bash
+
+# Create a virtualbox modules tarball from a VirtualBox binary package.
+# We cannot download the package by this script because of the unpredictable
+# build number being in the filename.
+#
+# usage: create_vbox_modules_tarball.sh VirtualBox-4.1.18-78361-Linux_amd64.run
+
+[ -f "$1" ] || exit 1
+
+VBOX_PACKAGE="$1"
+VERSION_SUFFIX=""
+
+if [[ ${VBOX_PACKAGE} = *_BETA* ]] || [[ ${VBOX_PACKAGE} = *_RC* ]] ; then
+ VERSION_SUFFIX="$(echo ${VBOX_PACKAGE} | sed 's@.*VirtualBox-[[:digit:]\.]\+\(_[[:alpha:]]\+[[:digit:]]\).*@\L\1@')"
+
+fi
+
+VBOX_VER="$(echo ${VBOX_PACKAGE} | sed 's@.*VirtualBox-\([[:digit:]\.]\+\).*@\1@')${VERSION_SUFFIX}"
+
+
+sh ${VBOX_PACKAGE} --noexec --keep --nox11 || exit 2
+cd install || exit 3
+tar -xaf VirtualBox.tar.bz2 || exit 4
+cd src/vboxhost || exit 5
+tar -cvJf ../../../vbox-kernel-module-src-${VBOX_VER}.tar.xz . || exit 6
+cd ../../.. && rm install -rf
+
+exit 0
diff --git a/app-emulation/virtualbox-modules/files/virtualbox-modules-3.17.patch b/app-emulation/virtualbox-modules/files/virtualbox-modules-3.17.patch
new file mode 100644
index 00000000..1d059c5a
--- /dev/null
+++ b/app-emulation/virtualbox-modules/files/virtualbox-modules-3.17.patch
@@ -0,0 +1,49 @@
+diff -rupN work/vboxdrv/r0drv/linux/alloc-r0drv-linux.c work.new/vboxdrv/r0drv/linux/alloc-r0drv-linux.c
+--- work/vboxdrv/r0drv/linux/alloc-r0drv-linux.c 2014-01-14 04:27:06.000000000 -0600
++++ work.new/vboxdrv/r0drv/linux/alloc-r0drv-linux.c 2014-09-03 11:12:28.247795756 -0500
+@@ -191,7 +191,7 @@ static PRTMEMHDR rtR0MemAllocExecVmArea(
+ struct page **papPagesIterator = papPages;
+ pVmArea->nr_pages = cPages;
+ pVmArea->pages = papPages;
+- if (!map_vm_area(pVmArea, PAGE_KERNEL_EXEC, &papPagesIterator))
++ if (!map_vm_area(pVmArea, PAGE_KERNEL_EXEC, papPagesIterator))
+ {
+ PRTMEMLNXHDREX pHdrEx = (PRTMEMLNXHDREX)pVmArea->addr;
+ pHdrEx->pVmArea = pVmArea;
+diff -rupN work/vboxnetadp/linux/VBoxNetAdp-linux.c work.new/vboxnetadp/linux/VBoxNetAdp-linux.c
+--- work/vboxnetadp/linux/VBoxNetAdp-linux.c 2013-10-09 06:02:09.000000000 -0500
++++ work.new/vboxnetadp/linux/VBoxNetAdp-linux.c 2014-09-03 11:13:55.999687819 -0500
+@@ -52,6 +52,25 @@
+
+ #define VBOXNETADP_FROM_IFACE(iface) ((PVBOXNETADP) ifnet_softc(iface))
+
++/*******************************
++source for the 4th parameter alloc_netdev fix for kernel 3.17-rc1 is:
++https://github.com/proski/madwifi/commit/c5246021b7b8580c2aeb0a145903acc07d246ac1
++*/
++#ifndef NET_NAME_UNKNOWN
++#undef alloc_netdev
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,23)
++#define alloc_netdev(sizeof_priv, name, name_assign_type, setup) \
++ alloc_netdev(sizeof_priv, name, setup)
++#elif LINUX_VERSION_CODE < KERNEL_VERSION(2,6,38)
++#define alloc_netdev(sizeof_priv, name, name_assign_type, setup) \
++ alloc_netdev_mq(sizeof_priv, name, setup, 1)
++#else
++#define alloc_netdev(sizeof_priv, name, name_assign_type, setup) \
++ alloc_netdev_mqs(sizeof_priv, name, setup, 1, 1)
++#endif
++#endif
++/*******************************/
++
+ /*******************************************************************************
+ * Internal Functions *
+ *******************************************************************************/
+@@ -183,6 +202,7 @@ int vboxNetAdpOsCreate(PVBOXNETADP pThis
+ /* No need for private data. */
+ pNetDev = alloc_netdev(sizeof(VBOXNETADPPRIV),
+ pThis->szName[0] ? pThis->szName : VBOXNETADP_LINUX_NAME,
++ NET_NAME_UNKNOWN,
+ vboxNetAdpNetDevInit);
+ if (pNetDev)
+ {
diff --git a/app-emulation/virtualbox-modules/files/virtualbox-modules-4.1.4-pax-const.patch b/app-emulation/virtualbox-modules/files/virtualbox-modules-4.1.4-pax-const.patch
new file mode 100644
index 00000000..4e4cde06
--- /dev/null
+++ b/app-emulation/virtualbox-modules/files/virtualbox-modules-4.1.4-pax-const.patch
@@ -0,0 +1,48 @@
+diff -urp vboxdrv.orig/SUPDrvIDC.h vboxdrv/SUPDrvIDC.h
+--- vboxdrv.orig/SUPDrvIDC.h 2011-09-06 15:53:27.852567531 +0200
++++ vboxdrv/SUPDrvIDC.h 2011-09-06 15:54:05.420565524 +0200
+@@ -160,7 +160,7 @@ typedef struct SUPDRVIDCREQGETSYM
+ {
+ /** The symbol address. */
+ PFNRT pfnSymbol;
+- } Out;
++ } __no_const Out;
+ } u;
+ } SUPDRVIDCREQGETSYM;
+ /** Pointer to a SUPDRV IDC get symbol request. */
+diff -urp vboxnetflt.orig/include/VBox/intnet.h vboxnetflt/include/VBox/intnet.h
+--- vboxnetflt.orig/include/VBox/intnet.h 2011-09-06 15:53:27.852567531 +0200
++++ vboxnetflt/include/VBox/intnet.h 2011-09-06 15:54:05.424565524 +0200
+@@ -783,7 +783,7 @@ typedef struct INTNETTRUNKFACTORY
+ DECLR0CALLBACKMEMBER(int, pfnCreateAndConnect,(struct INTNETTRUNKFACTORY *pIfFactory, const char *pszName,
+ PINTNETTRUNKSWPORT pSwitchPort, uint32_t fFlags,
+ PINTNETTRUNKIFPORT *ppIfPort));
+-} INTNETTRUNKFACTORY;
++} __no_const INTNETTRUNKFACTORY;
+ /** Pointer to the trunk factory. */
+ typedef INTNETTRUNKFACTORY *PINTNETTRUNKFACTORY;
+
+diff -urp vboxnetflt.orig/linux/VBoxNetFlt-linux.c vboxnetflt/linux/VBoxNetFlt-linux.c
+--- vboxnetflt.orig/linux/VBoxNetFlt-linux.c 2011-07-19 12:15:22.000000000 +0200
++++ vboxnetflt/linux/VBoxNetFlt-linux.c 2011-09-06 15:56:00.516559379 +0200
+@@ -840,7 +840,7 @@ typedef struct ethtool_ops OVR_OPSTYPE;
+
+ # else /* LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 29) */
+
+-typedef struct net_device_ops OVR_OPSTYPE;
++typedef net_device_ops_no_const OVR_OPSTYPE;
+ # define OVR_OPS netdev_ops
+ # define OVR_XMIT pOrgOps->ndo_start_xmit
+
+diff -urp vboxpci.orig/include/VBox/rawpci.h vboxpci/include/VBox/rawpci.h
+--- vboxpci.orig/include/VBox/rawpci.h 2011-04-18 17:01:12.000000000 +0200
++++ vboxpci/include/VBox/rawpci.h 2011-09-06 15:57:17.340555277 +0200
+@@ -545,7 +545,7 @@ typedef struct RAWPCIFACTORY
+ DECLR0CALLBACKMEMBER(void, pfnDeinitVm,(PRAWPCIFACTORY pFactory,
+ PVM pVM,
+ PRAWPCIPERVM pPciData));
+-} RAWPCIFACTORY;
++} __no_const RAWPCIFACTORY;
+
+ #define RAWPCIFACTORY_UUID_STR "ea089839-4171-476f-adfb-9e7ab1cbd0fb"
+
diff --git a/app-emulation/virtualbox-modules/files/virtualbox.conf b/app-emulation/virtualbox-modules/files/virtualbox.conf
new file mode 100644
index 00000000..6e882a17
--- /dev/null
+++ b/app-emulation/virtualbox-modules/files/virtualbox.conf
@@ -0,0 +1,3 @@
+vboxnetflt
+vboxnetadp
+vboxdrv