I've experienced the same error. I found a patch correcting this bug for kernel 3.7+, but then I got an error on linux-headers included file (include/linux/iommu.h) :

iommu.h:272:2: error: implicit declaration of function ‘ERR_PTR’ [-Werror=implicit-function-declaration]

This bug isn't strictly on virtualbox-dkms, but to resolve it, you just have to add

#include "err.h"

to /usr/src/linux-headers-<version>-common/include/linux/iommu.h, at line 25 (after 2 other #include). I joined the patch file, but i don't think it's in Debian standards (I found it on another distro mailing list), but it works if you apply it from /var/lib/dkms/virtualbox/<version_of_virtualbox>/source.

I'm sorry if this report is bad or something, as it's my first. I hope this could be useful to anyone.
--- a/r0drv/linux/memobj-r0drv-linux.c
+++ b/r0drv/linux/memobj-r0drv-linux.c
@@ -1448,7 +1448,13 @@ DECLHIDDEN(int) rtR0MemObjNativeMapUser(
 
 #if   defined(VBOX_USE_INSERT_PAGE) && LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22)
                     rc = vm_insert_page(vma, ulAddrCur, pMemLnxToMap->apPages[iPage]);
-                    vma->vm_flags |= VM_RESERVED; /* This flag helps making 100% sure some bad stuff wont happen (swap, core, ++). */
+                    /* Thes flags help making 100% sure some bad stuff wont happen (swap, core, ++).
+                     * See remap_pfn_range() in mm/memory.c */
+#if   LINUX_VERSION_CODE >= KERNEL_VERSION(3, 7, 0)
+                    vma->vm_flags |= VM_DONTEXPAND | VM_DONTDUMP;
+#else
+                    vma->vm_flags |= VM_RESERVED;
+#endif
 #elif LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 11)
                     rc = remap_pfn_range(vma, ulAddrCur, page_to_pfn(pMemLnxToMap->apPages[iPage]), PAGE_SIZE, fPg);
 #elif defined(VBOX_USE_PAE_HACK)

Reply via email to