VirtualBox

Ticket #4840 (closed defect: worksforme)

Opened 5 years ago

Last modified 5 years ago

vboxvfs module build not suitable for kernels with CONFIG_MODVERSIONS

Reported by: mkromer Owned by:
Priority: major Component: guest additions
Version: VirtualBox 3.0.4 Keywords: vboxvfs kernel module
Cc: Guest type: Linux
Host type: Linux

Description

Compilation of the vboxvfs module is incomplete:

# cd vboxvfs/ # make [...]

LD [M] /media/vbox.local/linux/module/vboxvfs/vboxvfs.o Building modules, stage 2. MODPOST 1 modules

WARNING: "RTSpinlockAcquireNoInts" media/vbox.local/linux/module/vboxvfs/vboxvfs.ko undefined! [...]

The problem is because there is no symbol information available in the build directory (which is vboxvfs/ in this case). The necessary information resides in ../vboxadd/ instead. The separation of vboxadd and vboxvfs therefore causes the aforementioned problem with the openSUSE 11.1 2.6.27.x kernel, or generally, as I see it, any kernel with CONFIG_MODVERSIONS=y, CONFIG_MODULE_SRCVERSION_ALL=y.

The solution is to combine the build directories, such that the toplevel Makefile invokes Kbuild once, instead of each directory (vboxadd, vboxvfs, etc.) doing it for itself.

BTW:

The 'clean' target of the vbox additions Makefiles incorrectly clean files They should be running - at least -

make -C ${kerneldir} M=$PWD clean

and _not_ remove *.o, Modules.symvers modules.order, etc. for themselves. That is, BTW, Modules.symvers is wrong - the file is called Module.symvers.

Change History

comment:1 Changed 5 years ago by frank

So far it was not necessary to combine these build directories. The solution for this problem is to compile the vboxadd module first, then copy the Modules.symvers file from the vboxadd directory to the vboxvfs directory and finally compile the vboxvfs directory. It will now find the required modversions. And exactly this is done when you are doing /etc/init.d/vboxdrv setup to recompile the modules.

comment:2 Changed 5 years ago by frank

Thanks for the hint for the correct clean rule.

comment:3 Changed 5 years ago by mkromer

ok, so if its not neccessary to merge them... we should close this one as solved, right?

comment:4 Changed 5 years ago by frank

  • Status changed from new to closed
  • Resolution set to worksforme

Right. My intension was to wait for your response before closing.

Note: See TracTickets for help on using tickets.

www.oracle.com
ContactPrivacy policyTerms of Use