Date: 09 May, 2011
Posted by: admin
In: hints & tips|linux, open source & software
VirtualBox issues [solved], along with minor halevt error [solved], whilst updating from Kubuntu 10.10 Maverick to 11.04 Natty. Note that I write these things as I work through the problem and so you may be best jumping to the end if you’re just after the solution.
I’ve just moved from Ubuntu Maverick (well Kubuntu actually, version 10.10) to Ubuntu Natty (11.04). Waited a while to be sure that there weren’t going to be any major problems (as has been the case in the past) and things seemed to go smoothly.
So far there have only been two things causing problems.
One was that halevt wouldn’t work. But that was easy, just removed it, it seems that the functionality (hotplug hal actions) has been moved into the main hal package.
Two is that VirtualBox isn’t working, the module can’t be loaded. Hmm …
Virtualbox actually loads but when I come to use one of my virtual machines then a message pops up telling me that it’s broken.
Trying the suggested script:
user@host:~$ sudo /etc/init.d/vboxdrv setup
[sudo] password for user:
* Stopping VirtualBox kernel modules * done.
* Uninstalling old VirtualBox DKMS kernel modules * done.
* Trying to register the VirtualBox kernel modules using DKMS
Error! Bad return status for module build on kernel: 2.6.38-8-generic (x86_64)
Consult the make.log in the build directory
/var/lib/dkms/vboxhost/3.2.12/build/ for more information.
* Failed, trying without DKMS
* Recompiling VirtualBox kernel modules
* Look at /var/log/vbox-install.log to find out what went wrong
So, no dice there, what does the log and build info tell me? Basically the make.log file shows that vbox is looking for the linux/autoconf.h file in the wrong place. Some one else spotted this and suggests a quick soft link:
sudo ln -s /usr/src/linux-headers-`uname -r`/include/generated/autoconf.h /usr/src/linux-headers-`uname -r`/include/linux/autoconf.h
But this didn’t work for me:
$ sudo /etc/init.d/vboxdrv setup
* Stopping VirtualBox kernel modules * done.
* Uninstalling old VirtualBox DKMS kernel modules shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
* done.
* Trying to register the VirtualBox kernel modules using DKMS sh: getcwd() failed: No such file or directory
shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
chdir: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
* done.
* Starting VirtualBox kernel modules
* modprobe vboxdrv failed. Please use ‘dmesg’ to find out why
Though we do appear to be much further on. So, dmesg gives:
[ 1235.095211] vboxdrv: Found 2 processor cores.
[ 1235.096336] BUG: unable to handle kernel paging request at ffffffffa0db3ce0
[ 1235.096346] IP: [<ffffffffa0db3b67>] RTHeapSimpleInit+0x67/0x100 [vboxdrv]
[ 1235.096379] PGD 1a05067 PUD 1a09063 PMD a06c8067 PTE 2dc44161
[ 1235.096385] Oops: 0003 [#1] SMP
[ 1235.096388] last sysfs file: /sys/devices/virtual/misc/vboxdrv/uevent
[ 1235.096392] CPU 1
[ 1235.096394] Modules linked in: vboxdrv(+) binfmt_misc dm_crypt vesafb snd_hda_codec_realtek nvidia(P) snd_hda_intel snd_hda_codec snd_usb_audio snd_pcm snd_hwdep snd_usbmidi_lib usblp snd_seq_midi snd_rawmidi snd_seq_midi_event uvcvideo snd_seq ppdev parport_pc snd_timer videodev psmouse edac_core serio_raw joydev snd_seq_device snd v4l2_compat_ioctl32 k8temp edac_mce_amd lp i2c_nforce2 parport soundcore snd_page_alloc hid_logitech ff_memless usbhid hid usb_storage uas sata_nv sky2 pata_amd
[ 1235.096428]
[ 1235.096432] Pid: 5057, comm: modprobe Tainted: P 2.6.38-8-generic #42-Ubuntu Acer Aspire T180/EM61SM/EM61PM
[ 1235.096438] RIP: 0010:[<ffffffffa0db3b67>] [<ffffffffa0db3b67>] RTHeapSimpleInit+0x67/0x100 [vboxdrv]
[ 1235.096451] RSP: 0018:ffff8800a3d15ec8 EFLAGS: 00010206
[ 1235.096453] RAX: ffffffffa0f33cdf RBX: ffffffffa0db3ce0 RCX: 0000000000000000
[ 1235.096456] RDX: 0000000000180000 RSI: ffffffffa0db3ce0 RDI: ffffffffa0f3f5e0
[ 1235.096459] RBP: ffff8800a3d15ec8 R08: ffff800000000000 R09: ffff8800bfd11900
[ 1235.096461] R10: 0000000000000000 R11: 0000000000000001 R12: 0000000000180000
[ 1235.096464] R13: ffffffffa0c32000 R14: 0000000000000000 R15: 000000000040506a
[ 1235.096467] FS: 00007fa76dcd9720(0000) GS:ffff8800bfd00000(0000) knlGS:0000000000000000
[ 1235.096470] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
[ 1235.096472] CR2: ffffffffa0db3ce0 CR3: 0000000062b82000 CR4: 00000000000006e0
[ 1235.096475] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[ 1235.096478] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
[ 1235.096481] Process modprobe (pid: 5057, threadinfo ffff8800a3d14000, task ffff880062a5c4a0)
[ 1235.096483] Stack:
[ 1235.096485] ffff8800a3d15ef8 ffffffffa0da4a97 ffff8800a3d15ef8 ffffffffa0da2a75
[ 1235.096489] 0000000000000000 0000000000000000 ffff8800a3d15f18 ffffffffa0c32065
[ 1235.096492] 0000000000000000 ffffffffa0f3f260 ffff8800a3d15f48 ffffffff81002175
[ 1235.096496] Call Trace:
[ 1235.096511] [<ffffffffa0da4a97>] RTR0MemExecDonate+0x47/0x70 [vboxdrv]
[ 1235.096524] [<ffffffffa0da2a75>] ? RTR0Init+0x45/0x70 [vboxdrv]
[ 1235.096536] [<ffffffffa0c32065>] VBoxDrvLinuxInit+0x65/0x1000 [vboxdrv]
[ 1235.096543] [<ffffffff81002175>] do_one_initcall+0x45/0x190
[ 1235.096549] [<ffffffff810a4feb>] sys_init_module+0xfb/0x250
[ 1235.096553] [<ffffffff8100c002>] system_call_fastpath+0x16/0x1b
[ 1235.096555] Code: 00 00 00 48 8d 44 16 ff 48 39 c2 0f 83 89 00 00 00 48 89 f1 83 e1 1f 74 0e b8 20 00 00 00 48 29 c8 48 29 c2 48 01 c6 48 83 e2 e0 <48> c7 06 05 01 59 19 48 c7 46 30 ff ff ff ff 48 8d 04 16 48 89
[ 1235.096585] RIP [<ffffffffa0db3b67>] RTHeapSimpleInit+0x67/0x100 [vboxdrv]
[ 1235.096597] RSP <ffff8800a3d15ec8>
[ 1235.096599] CR2: ffffffffa0db3ce0
[ 1235.096603] —[ end trace 6bde0fb827090ca0 ]—
… and that to me looks like a huge dead-end.
So, change of tack:
Using sudo aptitude
I’ve removed the offending virtualbox-3.2 along with old header files and ensured that the kernel headers installed are the ones for my current kernel version. Now downloading the latest 4.0.6 version and installing using gdebi I get the following console info:
Selecting previously deselected package virtualbox-4.0.
(Reading database … (Reading database … 5%(Reading database … 10%(Reading database … 15%(Reading database … 20%(Reading database … 25%(Reading database … 30%(Reading database … 35%(Reading database … 40%(Reading database … 45%(Reading database … 50%(Reading database … 55%(Reading database … 60%(Reading database … 65%(Reading database … 70%(Reading database … 75%(Reading database … 80%(Reading database … 85%(Reading database … 90%(Reading database … 95%(Reading database … 100%(Reading database … 187687 files and directories currently installed.)
Unpacking virtualbox-4.0 (from …/virtualbox-4.0_4.0.6-71344~Ubuntu~maverick_amd64.deb) …
Setting up virtualbox-4.0 (4.0.6-71344~Ubuntu~maverick) …
Installing new version of config file /etc/init.d/vboxweb-service …
Installing new version of config file /etc/init.d/vboxdrv …
addgroup: The group `vboxusers’ already exists as a system group. Exiting.
update-rc.d: warning: vboxdrv stop runlevel arguments (0 1 6) do not match LSB Default-Stop values (1)
* Stopping VirtualBox kernel modules* Cannot unload module vboxdrv
Processing triggers for ureadahead …
Processing triggers for shared-mime-info …
Unknown media type in type ‘virtual/bluedevil-input’
Unknown media type in type ‘virtual/bluedevil-audio’
Unknown media type in type ‘virtual/bluedevil-sendfile’
Unknown media type in type ‘all/all’
Unknown media type in type ‘all/allfiles’
Unknown media type in type ‘uri/mms’
Unknown media type in type ‘uri/mmst’
Unknown media type in type ‘uri/mmsu’
Unknown media type in type ‘uri/pnm’
Unknown media type in type ‘uri/rtspt’
Unknown media type in type ‘uri/rtspu’
Unknown media type in type ‘interface/x-winamp-skin’
Processing triggers for hicolor-icon-theme …
Processing triggers for python-central …
Which all looks pretty normal, despite the warnings.
OK, so I loaded up VirtualBox 4 and some obvious changes are apparent in the GUI. Attempting to start a virtual machine then hard-locked the host OS, not even SysRq calls would work. Hold down power button and reboot, gulp!
It seems that for some reason Oracle has broken out the USB part of VirtualBox and made it a separate extension. This can be downloaded from www.virtualbox.org/wiki/Downloads (where you can get the actual deb packages too). Then it’s installed through the VirtualBox manager GUI using File > Preferences > Extensions and plugging in the location of the downloaded Oracle*.vbox-extension package.
Once this was finished I could finally boot up my virtual machines via the VirtualBox manager and with only 6 hours wasted messing about and finding a solution (oh and writing it up here).
Tada, think I actually got off quite lightly compared with previous Kubuntu updates.
That’s “too long; didn’t read”, i.e. this is the short version:
Happy to receive comments or queries below, cheers.
Sorry, comments are closed.