Opened 5 years ago
Closed 5 years ago
#18500 closed defect (duplicate)
VirtualBox incompatibility with 4.4.0-143 kernel in Ubuntu 14.04
Reported by: | RJS485 | Owned by: | |
---|---|---|---|
Component: | VM control | Version: | VirtualBox 6.0.4 |
Keywords: | Ubuntu 14.04 kernel 4.4.0-143 | Cc: | |
Guest type: | other | Host type: | Linux |
Description
Just installed an Ubuntu update this morning that changed default 4.4.0-142 kernel to 4.4.0-143 kernel. This rendered VirtualBox VM's unable to start on the machine. When I rebooted choosing 4.4.0-142 kernel, I was again able to run VirtualBox VM's. My problem is thereby solved but it seems to me that you would be interested in this problem. Do not feel obliged to respond to me. I am submitting this report because I am grateful for VirtualBox and hope this report will enable you to keep it running on Ubuntu. The problem is repeatedly reproducible on my machine and involves VirtualBox 4.3, 5.0, 5.1, 5.2, and 6.0. Will provide more info if you are interested.
Attachments (2)
Change History (6)
by , 5 years ago
by , 5 years ago
comment:1 by , 5 years ago
Also affects 1604.
There are at least two entries in the forum about this. It started with kernel 4.4.0-143-generic. The VB kernel drivers do not build anymore with a gcc error. Looks like a function is called with too many parameters. Most likely this is a change of the interface on kernel side (should not happen with point releases!).
From /var/log/vbox-setup.log:
include/linux/mm.h:1222:6: note: expected ‘struct vm_area_struct **’ but argument is of type ‘struct page **’ long get_user_pages(struct task_struct *tsk, struct mm_struct *mm, ^ /tmp/vbox.0/r0drv/linux/memobj-r0drv-linux.c:1113:18: error: too many arguments to function ‘get_user_pages’ rc = get_user_pages(pTask, /* Task for fault accounting. */
Since it affects a huge install base, can you provide a fix or hints for a work around? Thanks a million.
comment:2 by , 5 years ago
I found a work around myself. Since my U1804 machine was not affected, I installed the HWE stack to u1604. Works just fine now.
Command line to install:
sudo apt-get install --install-recommends linux-generic-hwe-16.04 xserver-xorg-hwe-16.04
Then reboot. Should also work for 1404.
See details about the HWE kernel:
Supporting screenshots