VirtualBox

Ticket #12320 (reopened defect)

Opened 6 months ago

Last modified 2 weeks ago

3D acceleration not working with Gnome Ubuntu 13.10 guest (falls back to software rendering)

Reported by: someguest Owned by:
Priority: major Component: 3D support
Version: VirtualBox 4.3.2 Keywords:
Cc: Guest type: Linux
Host type: other

Description

I have 64-bit Gnome Ubuntu 13.10 running in a VirtualBox 4.3.2 host (Windows 8.1 64-bit) with 4.3.2 guest additions installed by using the CD image that came with the host. Ubuntu's older guest addition packages are not installed (/usr/lib/xorg/modules/drivers/vboxvideo_drv.so is symlinked to /usr/lib/VBoxGuestAdditions/vboxvideo_drv_114.so, and /usr/lib/VBoxGuestAdditions is symlinked to /opt/VBoxGuestAdditions-4.3.2/lib/VBoxGuestAdditions).

According to Xorg.0.log (full log attached):

[    24.027] (EE) AIGLX error: vboxvideo does not export required DRI extension
[    24.028] (EE) AIGLX: reverting to software rendering

Needless to say, the guest desktop is terribly slow as a result of this. This has worked in older versions of Ubuntu (12.04 I think, with the bundled guest additions) and VirtualBox.

Attachments

VBox.log Download (73.7 KB) - added by someguest 6 months ago.
Xorg.0.log Download (30.4 KB) - added by someguest 6 months ago.
Xorg.0.2.log Download (40.6 KB) - added by Dugan 5 months ago.
Xorg.0.log from a Slackware 14.1 guest with nonworking 3D acceleration
Xorg.0.3.log Download (30.5 KB) - added by someguest 5 months ago.
log from 3.4.3 session
VBox.2.log Download (58.8 KB) - added by someguest 5 months ago.
log from 3.4.3 session
glxinfo.log Download (23.4 KB) - added by inzpektor 4 months ago.
Xorg.0.log.3dOn Download (32.5 KB) - added by inzpektor 4 months ago.
VBox.3.log Download (61.6 KB) - added by someguest 4 months ago.
VBox.4.log Download (61.6 KB) - added by someguest 3 months ago.
Log file after crash in 4.3.6
VBox.5.log Download (73.4 KB) - added by someguest 6 weeks ago.
Log file after crash in 4.3.8
VBox.6.log Download (73.4 KB) - added by someguest 4 weeks ago.
Log file after crash in 4.3.10
VirtualBox.exe.3144.zip Download (348.4 KB) - added by someguest 2 weeks ago.
Minidump file after crash in 4.3.10

Change History

Changed 6 months ago by someguest

Changed 6 months ago by someguest

comment:1 Changed 6 months ago by michael

Are you sure that you are using software rendering? Please run glxinfo from the mesa-utils package to check (it should say you are using direct rendering, and the vendor string should be "Chromium" if 3D acceleration is in use).

VirtualBox 3D pass-through really doesn't support AIGLX, so the log messages are correct in any case.

Changed 5 months ago by Dugan

Xorg.0.log from a Slackware 14.1 guest with nonworking 3D acceleration

comment:2 Changed 5 months ago by Dugan

I am experiencing this my Slackware 14.1 guests. It happens: on a 32-bit Slackware 14.1 guest on a 64-bit CentOS host, on a 64-bit Slackware 14.1 guest on a 64-bit CentOS 6.4 host, and on a 32-bit Slackware 14.1 guest on a 64-bit Windows 7 host. In all of these cases, I'm running VirtualBox 4.3.2 and have properly installed the guest additions.

I don't actually have 3D acceleration:

bash-4.2$ LIBGL_DEBUG=verbose glxinfo | grep direct
libGL: screen 0 does not appear to be DRI2 capable
libGL: XF86DRIGetClientDriverName: 1.0.0 vboxvideo (screen 0)
libGL: OpenDriver: trying /usr/lib/xorg/modules/dri/vboxvideo_dri.so
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 5, (OK)
drmOpenByBusid: Searching for BusID pci:0000:00:02.0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 5, (OK)
drmOpenByBusid: drmOpenMinor returns 5
drmOpenByBusid: Interface 1.4 failed, trying 1.1
drmOpenByBusid: drmGetBusid reports pci:0000:00:02.0
libGL error: Calling driver entry point failedlibGL error: reverting to software direct rendering
libGL error: failed to load driver: vboxvideo
libGL: OpenDriver: trying /usr/lib/xorg/modules/dri/swrast_dri.so
direct rendering: Yes
bash-4.2$

Steam is agonizingly slow in its screen redraws, and prints the following (multiple times) to the console:

libGL error: failed to load driver: vboxvideo
libGL error: Try again with LIBGL_DEBUG=verbose for more details.

vboxvideo is loaded:

bash-4.2$ lsmod | grep -i vbox
vboxsf                 34575  0 
vboxvideo               1225  1 
drm                   186279  2 vboxvideo
vboxguest             161786  7 vboxsf
bash-4.2$

My Xorg.0.log is attached.

comment:3 Changed 5 months ago by Dugan

UPDATE:

I fixed it.

The solution was to create the following symlink:

bash-4.2$ ls -l /usr/lib/dri/swrast_dri.so 
lrwxrwxrwx 1 root root 39 Nov 20 10:39 /usr/lib/dri/swrast_dri.so -> /usr/lib/xorg/modules/dri/swrast_dri.so

Now my vendor strings in glxinfo all say Chromium. Steam even refuses to run, and popups up the following message: "Fatal Error: Steam does not run in VirtualBox with 3D acceleration enabled. Try turning off 3D acceleration." So it's definitely working. ;)

I suspect that this is the solution to every "OpenGL is not working in my Linux guest" issue that's been reported since 2009.

It is also the solution described in this thread:  https://forums.virtualbox.org/viewtopic.php?f=3&t=16692&start=15#p71528

comment:4 Changed 5 months ago by michael

Dugan, thank you for the find. I don't think that this will solve all of our Linux guest 3D issues, and is in fact probably not related to the original report, but I have certainly fixed that so that it should now work out of the box with Slackware 14.1.

comment:5 Changed 5 months ago by frank

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

Fix is part of 4.3.4.

comment:6 Changed 5 months ago by someguest

  • Status changed from closed to reopened
  • Resolution fixed deleted

After upgrading both host and guest additions to 4.3.4, 3D is still terribly slow and there is no mention of Chromium by glxinfo.

direct rendering: Yes
server glx vendor string: SGI
...
client glx vendor string: Mesa Project and SGI
...
OpenGL vendor string: VMware, Inc.
OpenGL renderer string: Gallium 0.4 on llvmpipe (LLVM 3.3, 128 bits)
OpenGL version string: 2.1 Mesa 9.2.1

Note that it does say direct rendering, but llvmpipe seems to be a software rasteriser.

comment:7 Changed 5 months ago by efuquen

I was having the exact same problem with 4.3.0 I've upgraded to 4.3.4 and the problem persists. Same version of Ubuntu (13.10) and getting the exact same results in glxinfo as the comment above. I also get the error message listed in the original bug report:

[    24.027] (EE) AIGLX error: vboxvideo does not export required DRI extension
[    24.028] (EE) AIGLX: reverting to software rendering

comment:8 follow-up: ↓ 9 Changed 5 months ago by michael

A log file for the guest and the complete Xorg.x.log file from inside the guest would be helpful.

Last edited 5 months ago by michael (previous) (diff)

comment:9 in reply to: ↑ 8 Changed 5 months ago by efuquen

Replying to michael:

A log file for the guest and the complete Xorg.x.log file from inside the guest would be helpful.

Xorg file in guest:  https://gist.github.com/efuquen/17b4e52e29f326251d7a

VBox.log file in host:  https://gist.github.com/efuquen/3f5bd41159a969f33ff5

comment:10 Changed 5 months ago by michael

It looks from that as if all is well on the X server side. What does the output of

$ LIBGL_DEBUG=verbose glxinfo

look like?

Changed 5 months ago by someguest

log from 3.4.3 session

Changed 5 months ago by someguest

log from 3.4.3 session

comment:11 Changed 5 months ago by someguest

I've attached my logs from 3.4.3. Using LIBGL_DEBUG I get the following additional output from glxinfo:

libGL: OpenDriver: trying /usr/lib/x86_64-linux-gnu/dri/tls/swrast_dri.so
libGL: OpenDriver: trying /usr/lib/x86_64-linux-gnu/dri/swrast_dri.so
libGL: Can't open configuration file ~/.drirc: No such file or directory.
libGL: Can't open configuration file ~/.drirc: No such file or directory.

Edit: Sorry, that's 4.3.4 :)

Last edited 5 months ago by someguest (previous) (diff)

comment:12 follow-ups: ↓ 13 ↓ 15 ↓ 16 Changed 5 months ago by michael

And is this reproducible with a freshly installed Ubuntu 13.10 guest?

Changed 4 months ago by inzpektor

Changed 4 months ago by inzpektor

comment:13 in reply to: ↑ 12 Changed 4 months ago by inzpektor

Replying to michael:

And is this reproducible with a freshly installed Ubuntu 13.10 guest?

Just to clear things up a bit (@Dugan, @Michael, @Frank); Ubuntu Gnome is it's own distribution, which is based on Ubuntu - not Slackware.

I've reproduced the error with a fresh install of Ubuntu Gnome 13.10, but with a twist.

If 3D-accelleration is on in the Virtualbox settings, it boots to a black screen. If I then Ctrl-Alt-F5 and type:

export DISPLAY=:0 && LIBGL_DEBUG=verbose glxinfo

then I get:

direct rendering: Yes
server glx vendor string: Chromium
server glx version string: 1.3 Chromium

So the driver is working, except it's not :-)

I'm using Virtualbox 4.3.4 and the same version for the guest additions in Ubuntu Gnome 13.10. The host OS is Windows 7 64bit and the guest is Ubuntu Gnome 13.10 64bit.

I've attached the output of glxinfo in it's entirety and also the Xorg.log

Version 2, edited 4 months ago by inzpektor (previous) (next) (diff)

comment:14 Changed 4 months ago by michael

inzpektor, this is a different issue - see ticket #9124.

comment:15 in reply to: ↑ 12 Changed 4 months ago by efuquen

Replying to michael:

And is this reproducible with a freshly installed Ubuntu 13.10 guest?

That was indeed the problem. I completely trashed my previous VM and did a clean install and it works fine now. Thanks for the help!

comment:16 in reply to: ↑ 12 Changed 4 months ago by someguest

Replying to michael:

And is this reproducible with a freshly installed Ubuntu 13.10 guest?

I can reproduce it with freshly installed Ubuntu Gnome 13.10 64-bit (from  http://ubuntugnome.org/). The only thing I did was "Insert Guest Additions CD Image" and install the guest additions, reboot, and then install mesa-utils to run glxinfo. Still no Gallium, only SGI, Mesa, llvmpipe, etc. as before.

comment:17 Changed 4 months ago by misha

According to the log, you have MS Software rasterizer ogl implementation being used on host, which does not support 3D caps necessary to run 3D Desktops.
SW Rasterizer could be used either because you don't have proper 3D drivers installed on host, or you're running VBox under remote RDP session.
Please fix the above issues to make hw rasterizer to be used.

comment:18 Changed 4 months ago by misha

  • Status changed from reopened to closed
  • Resolution set to fixed

comment:19 Changed 4 months ago by someguest

That's a surprise. Apparently the Intel GMA X4500 driver for Windows 8 only has Direct3D support. Perhaps VirtualBox should warn the user when only software rendering is available? I will try to install the Windows 7 driver and report back.

Changed 4 months ago by someguest

comment:20 Changed 4 months ago by someguest

Progress of sorts... I now have hardware OpenGL support (tested and verified using other software), but VirtualBox now crashes when the guest is about to show the desktop. Attached VBox.3.log, it complains about incomplete framebuffer objects.

comment:21 Changed 4 months ago by someguest

  • Status changed from closed to reopened
  • Resolution fixed deleted

Forgot to reopen.

comment:22 Changed 3 months ago by someguest

Same problem with 4.3.6 host and guest additions - boots until desktop is about to be shown, then host crashes with incomplete framebuffer object as final message in the log.

comment:23 Changed 3 months ago by frank

Please attach a new VBox.log file for VBox 4.3.6.

Changed 3 months ago by someguest

Log file after crash in 4.3.6

Changed 6 weeks ago by someguest

Log file after crash in 4.3.8

comment:24 Changed 6 weeks ago by someguest

Same problem with 4.3.8 host and guest additions.

Changed 4 weeks ago by someguest

Log file after crash in 4.3.10

comment:25 Changed 4 weeks ago by someguest

Same problem with 4.3.10 host and guest additions.

comment:26 Changed 3 weeks ago by alfonso

Hi there,

I had this problem since I switched from my MacBook Air to a MacBook Pro.

I'm now experiencing the same problem in guest Lubuntu 13.10 (based on Ubuntu 13.10) :

[     5.891] (EE) AIGLX error: vboxvideo does not export required DRI extension
[     5.891] (EE) AIGLX: reverting to software rendering
[     5.891] (II) AIGLX: Screen 0 is not DRI capable
[     5.927] (II) AIGLX: Loaded and initialized swrast

and in Linux Mint 15 (based on Ubuntu 13.04):

[     7.161] (II) Next line is added to allow vboxvideo_drv.so to appear as whitelisted driver
[     7.161] (II) The file referenced, is *NOT* loaded
[     7.161] (II) Loading /usr/lib/xorg/modules/drivers//ati_drv.so
[     7.161] (EE) AIGLX error: vboxvideo does not export required DRI extension
[     7.164] (EE) AIGLX: reverting to software rendering
[     7.164] (II) AIGLX: Screen 0 is not DRI capable
[     7.226] (II) AIGLX: Loaded and initialized swrast

comment:27 Changed 3 weeks ago by raniejade

Same problem with 4.3.10.

Affected OSes: Ubuntu 12.04 LTS (i386/amd64), Linux Mint Petra (i386/amd64), Fedora 20 (i386/amd64). Default desktop environments are used.

comment:28 follow-up: ↓ 29 Changed 3 weeks ago by michael

Just to be clear: the AIGLX errors in Xorg.x.log are displayed even when 3D is working correctly. Check whether glxinfo (which may need to be installed in the guest, in Ubuntu/Debian the package is mesa-utils) reports "Chromium" as the driver.

comment:29 in reply to: ↑ 28 ; follow-up: ↓ 30 Changed 3 weeks ago by alfonso

Replying to michael:

Just to be clear: the AIGLX errors in Xorg.x.log are displayed even when 3D is working correctly. Check whether glxinfo (which may need to be installed in the guest, in Ubuntu/Debian the package is mesa-utils) reports "Chromium" as the driver.


Michael, thank you.

Not sure if this is the right place to ask you, but I'll try.

glxinfo | grep OpenGL reports:

libGL error: failed to load driver: vboxvideo
libGL error: Try again with LIBGL_DEBUG=verbose for more details.
OpenGL vendor string: Humper
OpenGL renderer string: Chromium
OpenGL version string: 2.1 Chromium 1.9
OpenGL shading language version string: 1.20
OpenGL extensions:

My problem is that anytime I run flash in my guest OS (e.g. youtube) the system becomes incredible slow to react. E.g. it takes 30+ seconds for youtube to get off full screen when pressing "Esc". The same is true for volume, skipping, etc.
This was not the case with my old MacBook Air until last December. From the first time I run on the MacBook Pro Retina I had this problem. I tried with several fresh Linux guest installation, but the problem did not go away.

comment:30 in reply to: ↑ 29 ; follow-up: ↓ 31 Changed 3 weeks ago by misha

Replying to alfonso: Could you attach a VM log as well please?

comment:31 in reply to: ↑ 30 Changed 2 weeks ago by alfonso

Replying to misha:

Replying to alfonso: Could you attach a VM log as well please?


misha can you please explain me which file are you referring to?
Do I need to turn on some debugging or default settings?

My host is OSX 10.9.2 MacBook Pro Retina

comment:32 follow-up: ↓ 33 Changed 2 weeks ago by misha

Default should be enough I would think. The crash reports should be placed under ~/Library/Logs/DiagnosticReports/

comment:33 in reply to: ↑ 32 ; follow-up: ↓ 34 Changed 2 weeks ago by alfonso

Replying to misha:

Default should be enough I would think. The crash reports should be placed under ~/Library/Logs/DiagnosticReports/


Just to be clear, you mention crash but I don't experience any crash, simply quite low performances and low responsiveness when I run Flash in my Ubuntu based guest OSes.
Do you still need the same reports?

comment:34 in reply to: ↑ 33 Changed 2 weeks ago by misha

Replying to alfonso: Sorry, just a VM log then, it should be under <VM_dir>/Logs/VBox.log. <VM_dir> is ~/VirtualBox VMs/<VM_name>/ by default.

Changed 2 weeks ago by someguest

Minidump file after crash in 4.3.10

comment:35 Changed 2 weeks ago by someguest

I found out how to create minidumps. Not sure why it wasn't requested earlier, hopefully it's useful for figuring out why it crashes.

Note: See TracTickets for help on using tickets.

www.oracle.com
ContactPrivacy policyTerms of Use