SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Today I installed the 5.18.2 kernel files that were added to "testing". Everything seems to work fine except compiling the kernel module for VirtualBox. My normal way of doing this is to run the "virtualbox-kernel" Slackbuild after rebooting with a new kernel. Today, for the first time ever, I got the following error:
Code:
CC [M] /tmp/SBo/virtualbox-kernel-6.1.32/vboxdrv/generic/uuid-generic.o
CC [M] /tmp/SBo/virtualbox-kernel-6.1.32/vboxdrv/VBox/log-vbox.o
CC [M] /tmp/SBo/virtualbox-kernel-6.1.32/vboxdrv/common/alloc/heapsimple.o
LD [M] /tmp/SBo/virtualbox-kernel-6.1.32/vboxdrv/vboxdrv.o
MODPOST /tmp/SBo/virtualbox-kernel-6.1.32/vboxdrv/Module.symvers
CC [M] /tmp/SBo/virtualbox-kernel-6.1.32/vboxdrv/vboxdrv.mod.o
LD [M] /tmp/SBo/virtualbox-kernel-6.1.32/vboxdrv/vboxdrv.ko
make[2]: Leaving directory '/usr/src/linux-5.18.2'
make[1]: Leaving directory '/tmp/SBo/virtualbox-kernel-6.1.32/vboxdrv'
=== Building 'vboxnetflt' module ===
make[1]: Entering directory '/tmp/SBo/virtualbox-kernel-6.1.32/vboxnetflt'
make V= CONFIG_MODULE_SIG= CONFIG_MODULE_SIG_ALL= -C /lib/modules/5.18.2/build M=/tmp/SBo/virtualbox-kernel-6.1.32/vboxnetflt SRCROOT=/tmp/SBo/virtualbox-kernel-6.1.32/vboxnetflt -j4 modules
make[2]: Entering directory '/usr/src/linux-5.18.2'
CC [M] /tmp/SBo/virtualbox-kernel-6.1.32/vboxnetflt/linux/VBoxNetFlt-linux.o
CC [M] /tmp/SBo/virtualbox-kernel-6.1.32/vboxnetflt/VBoxNetFlt.o
CC [M] /tmp/SBo/virtualbox-kernel-6.1.32/vboxnetflt/SUPR0IdcClient.o
CC [M] /tmp/SBo/virtualbox-kernel-6.1.32/vboxnetflt/SUPR0IdcClientComponent.o
CC [M] /tmp/SBo/virtualbox-kernel-6.1.32/vboxnetflt/linux/SUPR0IdcClient-linux.o
/tmp/SBo/virtualbox-kernel-6.1.32/vboxnetflt/linux/VBoxNetFlt-linux.c: In function ‘vboxNetFltPortOsXmit’:
/tmp/SBo/virtualbox-kernel-6.1.32/vboxnetflt/linux/VBoxNetFlt-linux.c:2314:23: error: implicit declaration of function ‘netif_rx_ni’; did you mean ‘netif_rx’? [-Werror=implicit-function-declaration]
2314 | err = netif_rx_ni(pBuf);
| ^~~~~~~~~~~
| netif_rx
cc1: some warnings being treated as errors
make[3]: *** [scripts/Makefile.build:288: /tmp/SBo/virtualbox-kernel-6.1.32/vboxnetflt/linux/VBoxNetFlt-linux.o] Error 1
make[2]: *** [Makefile:1834: /tmp/SBo/virtualbox-kernel-6.1.32/vboxnetflt] Error 2
make[2]: Leaving directory '/usr/src/linux-5.18.2'
make[1]: *** [/tmp/SBo/virtualbox-kernel-6.1.32/vboxnetflt/Makefile-footer.gmk:117: vboxnetflt] Error 2
make[1]: Leaving directory '/tmp/SBo/virtualbox-kernel-6.1.32/vboxnetflt'
make: *** [Makefile:65: vboxnetflt] Error 1
virtualbox-kernel:
Would you like to continue processing the rest of the
queue or would you like to abort? If this failed
package is a dependency of another package in the queue
then it may not make sense to continue.
(Y)es to continue, (N)o to abort, (R)etry the build?:
I am not enough of a (current) programmer to be able to figure out what to do with this, so any help will be appreciated.
Tomorrow morning, I will possibly install the 5.17.13 kernel that also came out today, just to see if it will work.
Thanks,
Bill
Distribution: Slackware64 {15.0,-current}, FreeBSD, stuff on QEMU
Posts: 456
Rep:
You could try switching to the latest "testing" version of VirtualBox for the 5.18.x kernels. This LQ thread is a good reference for VB-related stuff on Slackware in general.
Or you could try modifying your slackbuild. There will be a --werror option somewhere on the compile command. It's usually there for a reason but you could try taking it out experimentally.
Or you could try modifying your slackbuild. There will be a --werror option somewhere on the compile command. It's usually there for a reason but you could try taking it out experimentally.
Thanks for the suggestion, but the virtualbox-kernel module is not compiled. All of the code would have to be searched to find werror. That would be a recipe for disaster in my case! But I really do appreciate the attempt.
pghvlaans & chrisretusn:
I did wind up with the 5.18.2 kernel & installed the test build, 6.1.35-151573, as suggested. Something is amiss, however, when I start the program, I get this:
Code:
bill@kirk:~
$ /opt/VirtualBox/VirtualBox
(process:9256): GLib-GObject-WARNING **: 14:53:51.418: cannot register existing type 'NMAgentManagerError'
(process:9256): GLib-CRITICAL **: 14:53:51.418: g_once_init_leave: assertion 'result != 0' failed
(process:9256): GLib-GObject-WARNING **: 14:53:51.418: cannot retrieve class for invalid (unclassed) type '<invalid>'
Segmentation fault
bill@kirk:~
$
I assume that "Segmentation fault" implies a broken download. I will redownload & reinstall shortly.
Thanks a lot.
Bill
That error cropped up in another thread a while ago, and the solution was to run:
Code:
VBoxManage setextradata global GUI/UpdateDate never
Thanks! That got things going. Now my virtual machine will not start, because I had the Extension Pack installed in it, but not the new version, yet. That will be easy. I'll post results.
Bill
This is the tricky part with third party kernel modules. They do have to match the source of the kernel. In short you have 3 choices:
1) Choose a kernel version that matches your virtualbox
2) Choose a virtualbox version that matches your kernel
3) Chose a kernel module that ships with your kernel (kvm) and replace virtualbox with something that uses kvm instead (like qemu).
virtualbox-kernel (6.1.32) sbo does not build on -current.
Code:
/tmp/SBo/virtualbox-kernel-6.1.32/vboxnetflt/linux/VBoxNetFlt-linux.c: In function ‘vboxNetFltPortOsXmit’:
/tmp/SBo/virtualbox-kernel-6.1.32/vboxnetflt/linux/VBoxNetFlt-linux.c:2314:23: error: implicit declaration of function ‘netif_rx_ni’; did you mean ‘netif_rx’? [-Werror=implicit-function-declaration]
2314 | err = netif_rx_ni(pBuf);
| ^~~~~~~~~~~
| netif_rx
cc1: some warnings being treated as errors
make[3]: *** [scripts/Makefile.build:288: /tmp/SBo/virtualbox-kernel-6.1.32/vboxnetflt/linux/VBoxNetFlt-linux.o] Error 1
A fix was to download the slackbuild and virtualbox-kernel (6.1.32) source from slackbuilds.org and untar source, then edit virtualbox-kernel-6.1.32/vboxnetflt/linux/VBoxNetFlt-linux.c line 2314 to say 'err = 'netif_rx(pBuf)' (ie exactly what the error message says). It then built from the slackbuild and is working fine.
Thanks! That got things going. Now my virtual machine will not start, because I had the Extension Pack installed in it, but not the new version, yet. That will be easy. I'll post results.
Bill
I am not seeing that segmentation fault.
I just assumed (dislike that word ) that because VirtualBox successfully installed, it would work. Today I got an error when after starting my Slackware64 virtual machine. I came here to post about it, then read your post.
Extension Pack!
LOL I forgot to upgrade it. All is well. Just thought I'd post this for amusement.
I just assumed (dislike that word ) that because VirtualBox successfully installed, it would work. Today I got an error when after starting my Slackware64 virtual machine. I came here to post about it, then read your post.
Extension Pack!
LOL I forgot to upgrade it. All is well. Just thought I'd post this for amusement.
Yes, that kind of thing happens. It seems to happen to me more & more as I have slipped past 75. I guess I'll keep having senior moments! I'll mark this solved. Great thanks to all.
Regards,
Bill
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.