3 ms·
VirtualBox uses a kernel module, and that is annoying because the linux kernel API changes with every update, which means its kernel module needs to be recompil
by Aardwolf 12y ago
VirtualBox uses a kernel module, and that is annoying because the linux kernel API changes with every update, which means its kernel module needs to be recompiled. Since I update my Linux quite often, that basically means:
Everytime some friends call me to play a certain game online with each other, they need to be waiting a bit longer for me because I have yet again to recompile VirtualBox's kernel modules.
Is there a way to convert something that requires kernel modules, to run fully in userspace?
I'd be happy to lose some efficiency for this. Just a 100% reliable game to run my game would be perfect.
Are there things you can do only in kernel modules and not in userspace, and does VB need this? In theory userspace can do everything you need, right? Graphics, networking, audio, ...
- aquayellow 12y agoVirtualbox is an out-of-tree module and hence needs to be compiled. The base package is GPLv2 and is compatible with the Linux kernel license, but I don't know if Virtualbox developers ever tried to "upstream" their module. This is probably the easiest way to solve your problem. Most Virtualization Software these days use virtualization hardware extensions (Intel VMX/AMD SVM) and so the "hypervisor code" needs to be able to execute privileged instructions, eg - you can't run VMON from ring 3/userspace.
- justincormack 12y agoApparently the virtualbox code is terrible, hence the lack of upstreaming...
- josteink 12y agoDKMS might help if you have access to the source. https://en.m.wikipedia.org/wiki/Dynamic_Kernel_Module_Support https://en.m.wikipedia.org/wiki/Dynamic_Kernel_Module_Suppor...
- jimmaswell 12y agoI'd just update the kernel less if i were you. There's not really much of a point updating the kernel all the time for normal use is there?
- Aardwolf 12y agoWell, it's Archlinux, and the most basic usage pattern is to use "pacman -Syu", which updates everything (useful for updating your programs), including the kernel.
- drummer32 12y agoThere is a kernel-lts packages that doesn't update as often, so you won't need to recompile every time.
- dTal 12y agoIn Arch, failing to regularly update breaks your system. Also, regularly updating your system will definitely break it at some point (bleeding-edge dontcha know). The official position is that it's your own damn fault for upgrading or not upgrading, as the case may be. Arch is broken by design.