Ticket #4840 (closed defect: worksforme)

Opened 10 years ago

Last modified 10 years ago

vboxvfs module build not suitable for kernels with CONFIG_MODVERSIONS

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


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.


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 10 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 10 years ago by frank

Thanks for the hint for the correct clean rule.

comment:3 Changed 10 years ago by mkromer

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

comment:4 Changed 10 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.
ContactPrivacy policyTerms of Use