[vbox-dev] Kernel v4.12 API changes

Larry Finger Larry.Finger at lwfinger.net
Fri May 19 18:43:08 UTC 2017

On 05/19/2017 04:57 AM, Frank Mehnert wrote:
> On Mittwoch, 17. Mai 2017 20:49:42 CEST Frank Mehnert wrote:
>> Hi Larry,
>> On Montag, 15. Mai 2017 16:35:30 CEST Larry Finger wrote:
>>> Has anyone found the magic elixir to allow VB to run with kernel 4.12-rc1?
>>> Adding #include <asm/set_memory.h> to vboxdrv/r0drv/linux/alloc-r0drv-linux.c is
>>> trivial; however, I'm having trouble with changes in the page table walk code in
>>> vboxdrv/r0drv/linux/memobj-r0drv-linux.c. I followed the changes in the kernel
>>> and I have code that compiles cleanly, but as soon as I try to start a VM, the
>>> system locks up and panics a few seconds later. At this point, I have no
>>> diagnostics concerning where the fault happened.
>> we are working on a fix. The obvious fixes can be found in r66927, r66928
>> and r66930. These changes make the modules compile against Linux 4.12-rc1
>> but as you noticed, the kernel panics when starting a VM. We are debugging
>> this issue.
> quick fix for the remaining issue (freeze on VM start) is the following:
> --- src/VBox/HostDrivers/Support/linux/SUPDrv-linux.c   (revision 115504)
> +++ src/VBox/HostDrivers/Support/linux/SUPDrv-linux.c   (working copy)
> @@ -1397,7 +1397,7 @@
>   SUPR0DECL(uint32_t) SUPR0GetKernelFeatures(void)
>   {
>       uint32_t fFlags = 0;
>   #endif
> The reason is that the GDT is mapped read-only as of Linux 4.12. We have
> not yet decided if this will be the final fix for the moment or if an
> alternative fix (which requires changes to the VMM part as well) is the
> better choice.

Thanks for this update. At least the current set of patches will allow VB to 
build on my kernel, and when the Kernel:HEAD project at openSUSE switches to 


More information about the vbox-dev mailing list