VirtualBox

Opened 3 years ago

Closed 3 years ago

#20198 closed defect (fixed)

Virtualbox Linux vboxnetflt driver cannot be built with 5.11 kernel => fixed in svn/6.1.x x>18

Reported by: cloudsw Owned by: paulson
Component: host support Version: VirtualBox 6.1.18
Keywords: 5.11 kernel Cc:
Guest type: other Host type: Linux

Description (last modified by paulson)

Failed to rebuild drivers after installing 5.11 kernel:

$sudo vboxconfig vboxdrv.sh: Stopping VirtualBox services. vboxdrv.sh: Starting VirtualBox services. vboxdrv.sh: Building VirtualBox kernel modules. vboxdrv.sh: failed: Look at /var/log/vbox-setup.log to find out what went wrong.

There were problems setting up VirtualBox. To re-start the set-up process, run

/sbin/vboxconfig

as root. If your system is using EFI Secure Boot you may need to sign the kernel modules (vboxdrv, vboxnetflt, vboxnetadp, vboxpci) before you can load them. Please see your Linux system's documentation for more information.

vbox-setup.log is attached

/tmp/vbox.0/linux/VBoxNetFlt-linux.c: In function ‘vboxNetFltNeedsLinkState’:
/tmp/vbox.0/linux/VBoxNetFlt-linux.c:1761:47: error: dereferencing pointer to incomplete type ‘const struct ethtool_ops’
 1761 |     if (pDev->ethtool_ops && pDev->ethtool_ops->get_drvinfo)
      |                                               ^~
/tmp/vbox.0/linux/VBoxNetFlt-linux.c:1763:32: error: storage size of ‘Info’ isn’t known
 1763 |         struct ethtool_drvinfo Info;
      |                                ^~~~
/tmp/vbox.0/linux/VBoxNetFlt-linux.c:1766:20: error: ‘ETHTOOL_GDRVINFO’ undeclared (first use in this function)
 1766 |         Info.cmd = ETHTOOL_GDRVINFO;
      |                    ^~~~~~~~~~~~~~~~
/tmp/vbox.0/linux/VBoxNetFlt-linux.c:1766:20: note: each undeclared identifier is reported only once for each function it appears in
/tmp/vbox.0/linux/VBoxNetFlt-linux.c:1763:32: warning: unused variable ‘Info’ [-Wunused-variable]
 1763 |         struct ethtool_drvinfo Info;
      |                                ^~~~
make[2]: *** [scripts/Makefile.build:279: /tmp/vbox.0/linux/VBoxNetFlt-linux.o] Error 1
make[1]: *** [Makefile:1800: /tmp/vbox.0] Error 2
make: *** [/tmp/vbox.0/Makefile-footer.gmk:117: vboxnetflt] Error 2

Attachments (2)

vbox-setup.log (12.8 KB ) - added by cloudsw 3 years ago.
make.log (11.0 KB ) - added by drankinatty 3 years ago.
Linux 5.11 Kernel Module Fail to Build (make.log)

Download all attachments as: .zip

Change History (11)

by cloudsw, 3 years ago

Attachment: vbox-setup.log added

comment:1 by cloudsw, 3 years ago

Adding the following line in /usr/share/virtualbox/src/vboxhost/vboxnetflt/linux/VBoxNetFlt-linux.c fixed the problem.

#include <linux/ethtool.h>

comment:2 by paulson, 3 years ago

Owner: set to paulson
Status: newassigned
Summary: Virtualbox Linux drivers cannot be built with 5.11 kernelVirtualbox Linux vboxnetflt driver cannot be built with 5.11 kernel

This has been addressed in revision r142841 of the development branch of VirtualBox and the fix has also been backported to the 6.1 branch of VirtualBox as of revision r142842. Any Testbuilds containing these revisions will include the fix. As mentioned here, a quick workaround in the interim is to edit VBoxNetFlt-linux.c to include <linux/ethtool.h>. The fix will also be part of the next maintenance release of VirtualBox 6.1.x.

by drankinatty, 3 years ago

Attachment: make.log added

Linux 5.11 Kernel Module Fail to Build (make.log)

comment:3 by drankinatty, 3 years ago

I can confirm this bug on Archlinux with 6.1.18 and Linux 5.11. make.log attached.

comment:4 by paulson, 3 years ago

The VirtualBox 6.1.x Testbuilds contain the fix for this issue now so apart from editing VBoxNetFlt-linux.c as an interim fix you can download the updated VirtualBox package from here until the next maintenance release of VirtualBox is available.

comment:5 by paulson, 3 years ago

Description: modified (diff)

comment:6 by Virgil, 3 years ago

Same problem: same Linux kernel version:5.11,same virtualbox version:6.1.18

in reply to:  4 comment:7 by estibordo, 3 years ago

Replying to paulson:

The VirtualBox 6.1.x Testbuilds contain the fix for this issue now so apart from editing VBoxNetFlt-linux.c as an interim fix you can download the updated VirtualBox package from here until the next maintenance release of VirtualBox is available.

I was running 6.1.18 r142142. Removing it and installing the 6.1.19 Testbuild solve the problem with Kernel 5.11.13.

I was able to add the previous extpack (from ver 6.18) on this new version.

Now all virtualbox modules are built and working.

Thank you!

comment:8 by Soulsurfer, 3 years ago

The proposed include line mentioned by cloudsw above works on my machine.

Running VirtualBox 6.1.18 now on Kernel 5.11.15.

comment:9 by paulson, 3 years ago

Resolution: fixed
Status: assignedclosed
Summary: Virtualbox Linux vboxnetflt driver cannot be built with 5.11 kernelVirtualbox Linux vboxnetflt driver cannot be built with 5.11 kernel => fixed in svn/6.1.x x>18
Note: See TracTickets for help on using tickets.

© 2023 Oracle
ContactPrivacy policyTerms of Use