Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 295553 - X does not work in a virtualbox-ose guest with xf86-video-virtualbox-3.0.12 and xorg-server-1.7.1
Summary: X does not work in a virtualbox-ose guest with xf86-video-virtualbox-3.0.12 a...
Status: VERIFIED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: High normal with 4 votes (vote)
Assignee: Patrick Lauer
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-12-03 15:06 UTC by holger.gleissner
Modified: 2010-04-30 19:46 UTC (History)
10 users (show)

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


Attachments
emerge --info from the virtualbox guest system (emerge_info.txt,5.18 KB, text/plain)
2009-12-03 15:17 UTC, holger.gleissner
Details
/var/log/Xorg.0.log of the virtualbox guest system (Xorg.0.log,5.82 KB, text/plain)
2009-12-03 15:18 UTC, holger.gleissner
Details
test program to get X ABI version (xtest.c,278 bytes, text/plain)
2009-12-09 02:15 UTC, A Schenck
Details
Patch for xf86-video-virtualbox-3.1.6.ebuild to support X server 1.7.x (xf86-video-virtualbox_xorg-server-1.7_support.diff,741 bytes, patch)
2010-03-28 18:44 UTC, Karel Pazdera
Details | Diff
Patch for mouse driver (xf86-input-virtualbox_xorg-server-1.7_support.diff,721 bytes, patch)
2010-04-24 05:50 UTC, Jac Goudsmit
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description holger.gleissner 2009-12-03 15:06:42 UTC
Since I have upgraded the X-server of the guest system to version x11-base/xorg-server-1.7/1.7.1 the X-server of the guest system crashes at startup with the following message in Xorg.0.log: dlopen: /usr/lib64/xorg/modules/drivers/vboxvideo_drv.so: undefined symbol: resVgaShared.


Reproducible: Always

Steps to Reproduce:
1. Start virtualbox-ose on a gentoo linux system
2. Start a guest system wthin the virtualbox
3. Start xdm within the guest system

Actual Results:  
the X-server crashes.


Expected Results:  
the X-server is not crashes.
Comment 1 holger.gleissner 2009-12-03 15:17:22 UTC
Created attachment 211859 [details]
emerge --info from the virtualbox guest system
Comment 2 holger.gleissner 2009-12-03 15:18:12 UTC
Created attachment 211861 [details]
/var/log/Xorg.0.log of the virtualbox guest system
Comment 3 A Schenck 2009-12-09 02:13:20 UTC
I've been having this same issue, I can build and rebuild all of X and the vbox guest additions and drivers, but /usr/lib/xorg/modules/drivers/vboxvideo_drv.so always has resVgaShared in it (I love that less will parse the elf).  Looking around for clues I've found a forum post which mentions the same problem with ati drivers:
http://forums.gentoo.org/viewtopic-t-799568-highlight-resvgashared.html (not very useful)
A month old worksforme bug on virtualbox's tracker:
http://www.virtualbox.org/ticket/5417
and a 4 month old changeset that should have fixed it:
http://www.virtualbox.org/changeset/22149

Looking at the changeset it looks like this should only possibly happen if this macro: GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) is less than 6.  This macro is defined in /usr/include/xorg/xf86Module.h, which is owned by xorg-server.  With xorg-server-1.6.5 (my current setup since 1.7 failed) this returns 5.  This returns 6 with >=xorg-server-1.7 meaning vboxvideo should work, but there still seems to be a problem somewhere in there.  I'm still looking into it but it's difficult because this is on my work machine so I can't afford to have X broken for an extended period of time.  I'm very suspicious of the headers stored inside the VirtualBox-OSE tarball, which extract to /var/tmp/portage/x11-drivers/xf86-video-virtualbox-3.1.0/work/VirtualBox-3.1.0_OSE/src/VBox/Additions/x11/x11include/, they've got headers from every version of X from 1.3 to 7.1, and it would be very easy for them to pick the wrong ones, but I haven't been able to figure out how their build system works well enough to see what include paths they're using.

I've attached a very small test program to print out the value of GET_ABI_MAJOR(ABI_VIDEODRV_VERSION), compile with:
gcc xtest.c -I/usr/include/xorg -L/usr/lib/xorg/ -o xtest
and run with:
./xtest
Comment 4 A Schenck 2009-12-09 02:15:45 UTC
Created attachment 212503 [details]
test program to get X ABI version
Comment 5 devsk 2010-03-07 06:26:00 UTC
Has anyone made any progress on getting 1.7.X xorg to work with the virtualbox drivers? xorg is horribly broken between 1.6.X and 1.7.X and its not easy to go back to 1.6.X.
Comment 6 Karel Pazdera 2010-03-28 18:42:52 UTC
VirtualBox 3.1.x contains support for X server 1.7, but ebuild does not copy correct driver for X server 1.7. I am using VirtualBox 3.1.x (currently 3.1.6) built from modified ebuild on X server 1.7.4 and everything works fine.
Comment 7 Karel Pazdera 2010-03-28 18:44:53 UTC
Created attachment 225595 [details, diff]
Patch for xf86-video-virtualbox-3.1.6.ebuild to support X server 1.7.x
Comment 8 Karel Pazdera 2010-03-28 18:49:12 UTC
Ebuild for input (xf86-input-virtualbox) must be also modified by the same manner.
Comment 9 Marco Clocchiatti 2010-04-11 20:30:36 UTC
please, add the patch to portage.
Comment 10 Lars 2010-04-13 20:19:20 UTC
x11-drivers/xf86-video-virtualbox in version 3.0.12 is also BROKEN! but the ebuild patch #225595 works. so please, apply the patch ASAP!
Comment 11 John Ratliff 2010-04-14 18:57:43 UTC
I confirm that the solution presented in comments 7 and 8 solve this problem.
Comment 12 Jac Goudsmit 2010-04-24 05:50:57 UTC
Created attachment 228945 [details, diff]
Patch for mouse driver

I attached a similar patch for the virtualbox mouse driver. Tested with VirtualBox 3.1.6 (closed-source edition) but should work with other versions as well (please verify). 

I know technically this might not belong in the same bug report and the symptom doesn't match either (running the wrong mouse driver won't prevent X from starting, it just makes it necessary to click on the window to activate the mouse pointer) but it solves the same version-check problem in a different ebuild. Enjoy!
Comment 13 ukjohnd 2010-04-26 16:30:21 UTC
(In reply to comment #12)
Thanks Jac confirm works with x11-drivers/xf86-input-virtualbox-3.1.6
Comment 14 Fabio Erculiani (RETIRED) gentoo-dev 2010-04-30 19:46:21 UTC
Both fixed, thank you guys for the patience and for reporting.

+  30 Apr 2010; Fabio Erculiani <lxnay@gentoo.org>
+  xf86-video-virtualbox-3.1.0.ebuild, xf86-video-virtualbox-3.1.2.ebuild,
+  xf86-video-virtualbox-3.1.4-r1.ebuild, xf86-video-virtualbox-3.1.6.ebuild:
+  make 3.1.x ebuilds properly working with xorg-server-1.7, close bug
+  #295553
+

+  30 Apr 2010; Fabio Erculiani <lxnay@gentoo.org>
+  xf86-input-virtualbox-3.1.0.ebuild, xf86-input-virtualbox-3.1.2.ebuild,
+  xf86-input-virtualbox-3.1.4-r1.ebuild, xf86-input-virtualbox-3.1.6.ebuild:
+  make 3.1.x ebuilds properly working with xorg-server-1.7, close bug
+  #295553
+