Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 236151 - app-emulation/virtualbox-guest-additions-2.0.x cannot use shared folders
Summary: app-emulation/virtualbox-guest-additions-2.0.x cannot use shared folders
Status: RESOLVED WORKSFORME
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Markus Ullmann (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 232070
  Show dependency tree
 
Reported: 2008-08-29 21:58 UTC by Walter Meinl
Modified: 2008-11-05 20:23 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
log file for the build (app-emulation:virtualbox-guest-additions-1.6.4-r1:20080822-205639.log,507.48 KB, text/plain)
2008-08-29 22:05 UTC, Walter Meinl
Details
the log file from virtalbox-additions (vboxadd-install.log,60.53 KB, text/plain)
2008-08-29 22:08 UTC, Walter Meinl
Details
emerge --info (ei.txt,4.37 KB, text/plain)
2008-09-06 20:02 UTC, Walter Meinl
Details
found two typos in virtualbox-guest-additions-2.0.x.ebuilds (vboxgatypos.patch,696 bytes, patch)
2008-10-28 22:41 UTC, Walter Meinl
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Walter Meinl 2008-08-29 21:58:46 UTC
When I try to mount a shared folder after using this ebuild I see:
/sbin/mount.vboxsf: mounting failed with the error: No such device
I first was a bit astonished, cause I thought that /etc/init.d/virtualbox-guest-additions should have modprobed the vboxvfs module. Nevertheless, when I modprobe vboxvfs by hand I see:
FATAL: Error inserting vboxvfs (/lib/modules/2.6.26-gentoo-r1/misc/vboxvfs.ko): Unknown symbol in module, or unknown parameter (see dmesg)
and here is the relevant info from dmesg:
vboxvfs: no symbol version for vboxadd_cmc_open
vboxvfs: Unknown symbol vboxadd_cmc_open
vboxvfs: no symbol version for RTLogBackdoorPrintf
vboxvfs: Unknown symbol RTLogBackdoorPrintf
vboxvfs: no symbol version for vboxadd_cmc_ctl_guest_filter_mask
vboxvfs: Unknown symbol vboxadd_cmc_ctl_guest_filter_mask
vboxvfs: no symbol version for RTErrConvertToErrno
vboxvfs: Unknown symbol RTErrConvertToErrno
vboxvfs: no symbol version for vboxadd_cmc_call
vboxvfs: Unknown symbol vboxadd_cmc_call
vboxvfs: no symbol version for RTAssertDoBreakpoint
vboxvfs: Unknown symbol RTAssertDoBreakpoint
vboxvfs: no symbol version for vboxadd_cmc_close
vboxvfs: Unknown symbol vboxadd_cmc_close
vboxvfs: no symbol version for AssertMsg2
vboxvfs: Unknown symbol AssertMsg2
vboxvfs: no symbol version for AssertMsg1
vboxvfs: Unknown symbol AssertMsg1

After searching around I found that these symbols are contained in vboxadd, that is of course installed by the init script (but obviously, vboxvfs is not according to lsmod).
Shared folders work when I install the virtualbox-additions in the same environment. I started depmod and update-modules but neither was successfull
vboxvfs still complains about the missing symbols.

On a sidenote from the handbook it says for mounting shared folders
mount -t vboxsf ....
and the virtualbox-additions install /sbin/mount.vboxsf while your ebuild installs it as /sbin/mount.vboxvfs
I don't understand why virtualbox programmers call it vboxsf when the module is called vboxvfs (maybe to make it harder to remember the correct names) but you should consider to follow the virtualbox naming, because it is documented in the handbook.

Reproducible: Always
Comment 1 Walter Meinl 2008-08-29 22:05:38 UTC
Created attachment 164095 [details]
log file for the build

both module names are echoed into modules.order
Comment 2 Walter Meinl 2008-08-29 22:08:05 UTC
Created attachment 164097 [details]
the log file from virtalbox-additions

just in case this is of any help
Comment 3 Walter Meinl 2008-08-29 22:13:35 UTC
 grep -r vboxadd /lib/modules/2.6.26-gentoo-r1/
/lib/modules/2.6.26-gentoo-r1/modules.symbols:alias symbol:RTLogWriteUser vboxadd
/lib/modules/2.6.26-gentoo-r1/modules.symbols:alias symbol:vboxadd_cmc_close vboxadd
/lib/modules/2.6.26-gentoo-r1/modules.symbols:alias symbol:vboxadd_cmc_open vboxadd
/lib/modules/2.6.26-gentoo-r1/modules.symbols:alias symbol:AssertMsg1 vboxadd
/lib/modules/2.6.26-gentoo-r1/modules.symbols:alias symbol:AssertMsg2 vboxadd
/lib/modules/2.6.26-gentoo-r1/modules.symbols:alias symbol:RTErrConvertToErrno vboxadd
/lib/modules/2.6.26-gentoo-r1/modules.symbols:alias symbol:vboxadd_cmc_call vboxadd
/lib/modules/2.6.26-gentoo-r1/modules.symbols:alias symbol:vboxadd_cmc_ctl_guest_filter_mask vboxadd
/lib/modules/2.6.26-gentoo-r1/modules.symbols:alias symbol:RTAssertDoBreakpoint vboxadd
/lib/modules/2.6.26-gentoo-r1/modules.symbols:alias symbol:RTLogBackdoorPrintf vboxadd
/lib/modules/2.6.26-gentoo-r1/modules.symbols:alias symbol:RTLogBackdoorPrintfV vboxadd
/lib/modules/2.6.26-gentoo-r1/modules.dep:/lib/modules/2.6.26-gentoo-r1/misc/vboxvfs.ko: /lib/modules/2.6.26-gentoo-r1/misc/vboxadd.ko
/lib/modules/2.6.26-gentoo-r1/modules.dep:/lib/modules/2.6.26-gentoo-r1/misc/vboxadd.ko:
/lib/modules/2.6.26-gentoo-r1/modules.pcimap:vboxadd              0x000080ee 0x0000cafe 0x00000000 0x00000000 0x00000000 0x00000000 0x0

This lists all occurencies of vboxadd in /lib/modules
I could have sworn that I saw some days ago also an entry for vboxadd and vboxvfs in modules.order, but maybe that was lost by running depmode or update-modules, hm
Comment 4 Alessio Cassibba (X-Drum) 2008-09-02 17:45:25 UTC
(In reply to comment #0)
[..]
> On a sidenote from the handbook it says for mounting shared folders
> mount -t vboxsf ....
> and the virtualbox-additions install /sbin/mount.vboxsf while your ebuild
> installs it as /sbin/mount.vboxvfs
thanks for reporting this issue, now the ebuild installs that file with the right name (/sbin/mount.vboxsf),

> I don't understand why virtualbox programmers call it vboxsf when the module is
> called vboxvfs (maybe to make it harder to remember the correct names) but you
> should consider to follow the virtualbox naming, because it is documented in
> the handbook.
don't know why but vboxsf is the fs type you have to specify when mounting a shared folder.

[..]
> When I try to mount a shared folder after using this ebuild I see:
> /sbin/mount.vboxsf: mounting failed with the error: No such device
> I first was a bit astonished, cause I thought that
> /etc/init.d/virtualbox-guest-additions should have modprobed the vboxvfs
> module. Nevertheless, when I modprobe vboxvfs by hand I see:
> FATAL: Error inserting vboxvfs (/lib/modules/2.6.26-gentoo-r1/misc/vboxvfs.ko):
> Unknown symbol in module, or unknown parameter (see dmesg)
> and here is the relevant info from dmesg:
> vboxvfs: no symbol version for vboxadd_cmc_open
> vboxvfs: Unknown symbol vboxadd_cmc_open
[..]
unknow symbols are caused by the missing "/sbin/mount.vboxsf" (now fixed)
and the somethimes incorrect creation of "/dev/vboxadd", i fixed the initscript installed with the ebuild to create this character device with the right minor and major values.

> Shared folders work when I install the virtualbox-additions in the same
> environment. I started depmod and update-modules but neither was successfull
> vboxvfs still complains about the missing symbols.
I did a lot of testing with a gentoo guest and the updated ebuild, now all the features are working (timesync,shared folders) but there is a side note:

When using this additions it's important to rely upon the provided initscript
(/etc/init.d/virtualbox-guest-additions) to load all the needed modules in the right order, create the device and load the services.

Once all the stuff is loaded it's not always possible to restart the service,
this sounds like an upstream problem, i will report this.

You can find an updated ebuild on jokey's overlay[1] if you want to test it,
it will be committed as soon as possible.

Alessio
and once started 
Comment 5 Alessio Cassibba (X-Drum) 2008-09-02 17:48:17 UTC
(In reply to comment #4)
messed something in the last reply, the jokey's overlay is at:

http://overlays.gentoo.org/dev/jokey/browser/trunk/app-emulation/virtualbox-guest-additions

thanks again for your report.

Alessio
Comment 6 Walter Meinl 2008-09-02 22:44:25 UTC
(In reply to comment #5)
> (In reply to comment #4)
> messed something in the last reply, the jokey's overlay is at:
> 
> http://overlays.gentoo.org/dev/jokey/browser/trunk/app-emulation/virtualbox-guest-additions
> 
> thanks again for your report.
> 
> Alessio
> 

I cleaned everything out and installed the new ebuild from jokey's overlay but still see the same errors, hm, dunno whats wrong here. Could it be that it won't work, because shared folders compiled form the OSE just don't work in a virtualbox for windows downloaded from SUN?
Comment 7 Alessio Cassibba (X-Drum) 2008-09-03 20:15:13 UTC
(In reply to comment #6)
> I cleaned everything out and installed the new ebuild from jokey's overlay but
> still see the same errors, hm, dunno whats wrong here. Could it be that it
> won't work, because shared folders compiled form the OSE just don't work in a
> virtualbox for windows downloaded from SUN?
Don't know if there are issues with linux additions on guests running virtualbox on windows hosts, anyway could you please take and post here an:
emerge --info

(from your gentoo guest).


(In reply to comment #4)
[..]
> When using this additions it's important to rely upon the provided initscript
> (/etc/init.d/virtualbox-guest-additions) to load all the needed modules in the
> right order, create the device and load the services.
> 
> Once all the stuff is loaded it's not always possible to restart the service,
> this sounds like an upstream problem, i will report this.
[..]
This issue seems to be fixed in virtualbox-1.6.6, during my tests i was able
to use the additions and reload them without problems, this release will be commited soon in portage, i suggest to update both virtualbox and virtualbox-additions and try again.
Comment 8 Walter Meinl 2008-09-06 20:02:01 UTC
Created attachment 164755 [details]
emerge --info

(In reply to comment #7)
> Don't know if there are issues with linux additions on guests running
> virtualbox on windows hosts, anyway could you please take and post here an:
> emerge --info
> 
> (from your gentoo guest).
done 


still the same issue with virtualbox-guest-additions-1.6.6 under a windows host (1.6.6)

I disabled the automagical loading of the init-script, to start it manually. However, the vboxadd module is loaded despite of this fact (by udev ???)
I'll be out of town for about 3 weeks, so I'm not able to test anything during this time.......
Comment 9 Markus Ullmann (RETIRED) gentoo-dev 2008-10-27 18:47:55 UTC
What about the 2.x series? Please reopen if it still persists there
Comment 10 Walter Meinl 2008-10-28 21:47:55 UTC
(In reply to comment #9)
> What about the 2.x series? Please reopen if it still persists there
> 
Sorry for the long delay, some very bad luck in real life :-(
I see still the same error messages also with 2.x, when I modprobe vboxsf and also the same error messages about undefined symbols during linking vboxsf.ko as posted in the log file.

Comment 11 Walter Meinl 2008-10-28 22:41:48 UTC
Created attachment 170169 [details, diff]
found two typos in virtualbox-guest-additions-2.0.x.ebuilds

correcting those typos unfortunately did not help with the original problem posted here. Nevertheless, didn't want to open a new bug about.
Comment 12 Walter Meinl 2008-10-29 20:34:50 UTC
Comparing both build logs attached I discovered a difference: While your ebuild builds both modules (vboxadd and vboxvfs) in separate subdirs, which is driven by the linux-mod.eclass the script provided by SUN builds both moules after each other in the same temporary directory. By further analysis I found out that the Module.symvers file of vboxvfs created by the linux-mod.eclass is empty. Therefore, the symbols exported by vboxadd are not found by vboxvfs. When I manually copy over the Module.symvers file from the "vboxadd" directory created after unpack to the "vboxvfs" directory and then run manually make, the resulting vboxvfs.ko module works as expected.
Googling around with this information I came along this gentoo-bug:
http://bugs.gentoo.org/show_bug.cgi?id=237618
Obviously the reason why it worked for you according to comment #4 is probably that you were or are using a kernel version < 2.6.26. I posted the problem with gentoo-sources-2.6.26-r1 that is supposed to have troubles with subsequently built external modules from the same ebuild. As suggested in http://bugs.gentoo.org/show_bug.cgi?id=237618 I first recompiled my kernel (now gentoo-sources-2.6.27-r1) with CONFIG_MODVERSIONS enabled and CONFIG_MODULE_FORCE_LOAD _enabled_. However, I had still no success. Then I "patched" the linux-mod.eclass as suggested in bug237618 and yes now it works.
Thus the problem reported originally is related to the kernel-version > 2.6.26. 
Setting blocker for bug 232070
Comment 13 Alessio Cassibba (X-Drum) 2008-10-31 17:32:59 UTC
Thanks for your report,
fixed all the reported typos on jokey's overlay[1],
still working on the main issue reported.


[1] http://overlays.gentoo.org/dev/jokey
Comment 14 Walter Meinl 2008-11-01 09:34:59 UTC
(In reply to comment #13)
> Thanks for your report,
> fixed all the reported typos on jokey's overlay[1],
> still working on the main issue reported.
> 
> 
> [1] http://overlays.gentoo.org/dev/jokey
> 

Tested the overlay ebuild and it works.
According to bug237618 the main problem is related to module versioning. After I switched it off in the kernel config and rebuilt the kernel and the virtualbox-guest-addition modules, shared folders work, though I see still during building of the shared-folders modules that symbols are unresolved.

Thus, switching off module-versioning in the kernel is another workaround to get the shared-folders running.
Comment 15 Alessio Cassibba (X-Drum) 2008-11-05 19:42:44 UTC
(In reply to comment #14)
according with bug #237618 changes to linux-mod.eclass were committed,
can you confirm that changes made solved for you this issue?
Comment 16 Walter Meinl 2008-11-05 20:23:47 UTC
(In reply to comment #15)
> (In reply to comment #14)
> according with bug #237618 changes to linux-mod.eclass were committed,
> can you confirm that changes made solved for you this issue?
> 

Yes, I just rebuilt my kernel again. This time setting the config to use module versions again. Added /etc/init.d/virtualbox-guest-additions to the default runlevel and now after login vboxadd and vboxvfs modules are loaded according to lsmod and I can mount my shared folder with windows.
Setting to worksforme cause the initial reason for failing to load the module was not a bug in the virtualbox-guest-addtions.ebuild