Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

VirtualBox fails to build kernel modules with dkms #131

Closed
UriHerrera opened this issue Aug 29, 2023 · 2 comments
Closed

VirtualBox fails to build kernel modules with dkms #131

UriHerrera opened this issue Aug 29, 2023 · 2 comments
Labels
invalid Issues that are not bugs or feature requests upstream-bug Issues that are determined to not be caused by our configuration.

Comments

@UriHerrera
Copy link
Member

UriHerrera commented Aug 29, 2023

Describe the bug

During the installation process of VirtualBox using the installer from Oracle, the installer fails to build the VirtualBox kernel modules with the following error from the log file /var/log/vbox-setup.log

error: implicit declaration of function ‘skb_gso_segment’; did you mean ‘skb_gso_reset’? [-Werror=implicit-function-declaration]

Steps to reproduce the bug

  1. Install VirtualBox using the installer by Oracle
  2. The installer completes the installation of VirtualBox but fails to build the kernel modules

Expected behavior

The VirtualBox installer successfully builds the kernel modules.

Additional context

As indicated in this bug report at the Gentoo bug tracker.

VirtualBox modules were broken by the following commit in Linux 6.5 that was backported to Linux 6.4.10:

net: move gso declarations and functions to their files

https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.4.y&id=bbe07adbaf39c2c5a95c3ca7eb52b2119d50af7d

VirtualBox 7.0.10's VBoxNetFlt-linux.c does have an #include <net/gso.h>, but it's wrapped in a check for kernel 6.5.0; this needs to be changed to 6.4.10.


The solution is to modify the file VBoxNetFlt-linux.c in /opt/VirtualBox/src/vboxhost/vboxnetflt/linux/

sudo sed -i 's+#if RTLNX_VER_MIN(6,5,0)+#if RTLNX_VER_MIN(6,4,10)+g' /opt/VirtualBox/src/vboxhost/vboxnetflt/linux/VBoxNetFlt-linux.c

And rerun the kernel module build script.

sudo /sbin/vboxconfig

With that said, this is not an issue, bug, or problem caused by Nitrux; this is a problem with VirtualBox caused by a change in the Linux kernel.

Disclaimer: We do not develop VirtualBox or the Linux kernel. Please inform its developers at their respective bug trackers if you have issues.

@UriHerrera UriHerrera added invalid Issues that are not bugs or feature requests upstream-bug Issues that are determined to not be caused by our configuration. labels Aug 29, 2023
@UriHerrera
Copy link
Member Author

UriHerrera commented Aug 29, 2023

I'm adding the issue here for reference. However, I'm closing it because we're not Oracle or the Linux kernel developers, and this is not a problem caused by us.

@UriHerrera
Copy link
Member Author

Oracle has fixed this bug in VirtualBox 7.0.12.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
invalid Issues that are not bugs or feature requests upstream-bug Issues that are determined to not be caused by our configuration.
Projects
None yet
Development

No branches or pull requests

1 participant