1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
|
diff --git a/src/VBox/HostDrivers/VBoxNetAdp/linux/VBoxNetAdp-linux.c b/src/VBox/HostDrivers/VBoxNetAdp/linux/VBoxNetAdp-linux.c
index c6b21a9cc199..9ccce6f32218 100644
--- a/src/VBox/HostDrivers/VBoxNetAdp/linux/VBoxNetAdp-linux.c
+++ b/src/VBox/HostDrivers/VBoxNetAdp/linux/VBoxNetAdp-linux.c
@@ -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, PCRTMAC pMACAddress)
/* 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/src/VBox/Runtime/r0drv/linux/alloc-r0drv-linux.c b/src/VBox/Runtime/r0drv/linux/alloc-r0drv-linux.c
index 21e124bda039..2a046a3b254a 100644
--- a/src/VBox/Runtime/r0drv/linux/alloc-r0drv-linux.c
+++ b/src/VBox/Runtime/r0drv/linux/alloc-r0drv-linux.c
@@ -191,7 +191,7 @@ static PRTMEMHDR rtR0MemAllocExecVmArea(size_t cb)
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;
|