Bug 194324 - emulators/virtualbox-ose-additions - 3d not working
Summary: emulators/virtualbox-ose-additions - 3d not working
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: amd64 Any
: --- Affects Many People
Assignee: Jung-uk Kim
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-10-12 20:09 UTC by vxdwrttc
Modified: 2014-12-01 19:14 UTC (History)
1 user (show)

See Also:
vxdwrttc: maintainer-feedback? (vbox)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description vxdwrttc 2014-10-12 20:09:42 UTC
I am trying to get 3d support back on my FreeBSD 10.1-RC1, 10.1-RC2, it worked at a point, I don't know what I exactly did combining ports and xorg I think the old xorg worked, anyway, it does not work now on 10.0, 10.1-RC1, 10.1-RC2

Here are the packages installed:

xorg-7.7_1
xorg-server-1.12.4_9,1
dri-9.1.7_5,2
libdrm-2.4.52_1,1
virtualbox-ose-additions-4.3.16_1

All installed from pkg, I also rebuilt them all from ports, not working, I get the same thing:

(II) Loading extension XFree86-DRI
(II) Loading extension DRI2
(II) AIGLX: Screen 0 is not DRI2 capable
(II) AIGLX: Screen 0 is not DRI capable

Tracing the error, I isolated the function DRI2Connect which returns false, this way both driconf, xorg, or mesa fail, I didn't have the time or expertise to dig further.

Virtualbox has 3D support enabled, and it used to work.
Comment 1 Bugzilla Automation freebsd_committer freebsd_triage 2014-10-12 20:09:42 UTC
Auto-assigned to maintainer vbox@FreeBSD.org
Comment 2 vxdwrttc 2014-10-12 20:15:26 UTC
Forgot to mention, modules drm and vboxvideo are loaded.

I also tried adding:

Section "DRI"
        Mode 0666
EndSection

To xorg.conf.

I also added my username to the "wheel" group.
Comment 3 vxdwrttc 2014-10-13 19:27:14 UTC
Same problem on VirtualBox 4.3.18, virtualbox-ose-additions 4.3.18.

Modified Makefile, and distinfo in order to test the new version, compiles fine without any modifications.

Loaded xorg as root also, still the same issue.

No errors at all, just not working, glxheads gives the following:

libGL: screen 0 does not appear to be DRI2 capable
libGL: OpenDriver: trying /usr/local/lib/dri/swrast_dri.so

  GL_VERSION:  2.1 Mesa 9.1.7
  GL_VENDOR:   VMware, Inc.
  GL_RENDERER: Gallium 0.4 on llvmpipe (LLVM 3.3, 128 bits)


Checked if packages are installed (required in Makefile if OPENGL selected):

xextproto-7.3.0
libXext-1.3.2_2,1
damageproto-1.2.1
libXdamage-1.1.4_2
compositeproto-0.4.2
libXcomposite-0.4.4_2,1
fixesproto-5.0
libXfixes-5.0.1_2

Added OPTIONS_DEFAULT= OPENGL X11 to Makefile.

/var/db/ports/emulators_virtualbox-ose-additions/options
# This file is auto-generated by 'make config'.
# Options for virtualbox-ose-additions-4.3.18_1
_OPTIONS_READ=virtualbox-ose-additions-4.3.18_1
_FILE_COMPLETE_OPTIONS_LIST=DEBUG OPENGL X11
OPTIONS_FILE_UNSET+=DEBUG
OPTIONS_FILE_SET+=OPENGL
OPTIONS_FILE_SET+=X11
Comment 4 vxdwrttc 2014-10-13 20:45:16 UTC
3D works on Ubuntu 14.04 Guest, VBOX 4.3.18 additions 4.3.18

xserver-xorg 1:7.7+1ubuntu8
xserver-xorg-core 2:1.15.1-0ubuntu2.1
libdrm2:amd64 2.4.52-1
libgl1-mesa-dri:amd64 10.1.3-0ubuntu0.1

GL_VERSION:  2.1 Chromium 1.9
GL_VENDOR:   Humper
GL_RENDERER: Chromium
Comment 5 Jung-uk Kim freebsd_committer freebsd_triage 2014-11-25 00:17:23 UTC
I'll take it.
Comment 6 Jung-uk Kim freebsd_committer freebsd_triage 2014-11-25 00:41:48 UTC
I just updated the port (r373388) and it should have fixed the problem.  Please test and let me know.
Comment 7 commit-hook freebsd_committer freebsd_triage 2014-11-26 19:56:01 UTC
A commit references this bug:

Author: jkim
Date: Wed Nov 26 19:55:53 UTC 2014
New revision: 373459
URL: https://svnweb.freebsd.org/changeset/ports/373459

Log:
  Do not use DRI2 as we did not port vboxvideo.ko for DRM2/KMS yet.

  PR:		194324

Changes:
  head/emulators/virtualbox-ose/files/patch-src-VBox-Additions-x11-vboxvideo-Makefile.kmk
  head/emulators/virtualbox-ose-additions/Makefile
Comment 8 vxdwrttc 2014-12-01 07:02:52 UTC
I have tested on both FreeBSD 10.1, and FreeBSD 10, both freeze the X inserting ctrl+alt+del reboots the machine so the machine still works just X is broken, after checking Xorg.0.log I have noticed these errors:

- on 10.0 i get:
(II) AIGLX: Screen 0 is not DRI2 capable
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 13, (OK)
drmOpenByBusid: Searching for BusID pci:0000:00:02.0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 13, (OK)
drmOpenByBusid: drmOpenMinor returns 13
drmOpenByBusid: Interface 1.4 failed, trying 1.1
drmOpenByBusid: drmGetBusid reports pci:0000:00:02.0
(II) Next line is added to allow vboxvideo_drv.so to appear as whitelisted driver
(II) The file referenced, is *NOT* loaded
(II) Loading /usr/local/lib/xorg/modules/drivers//ati_drv.so
(EE) AIGLX error: vboxvideo does not export required DRI extension
Segmentation fault at address 0x80403948
Fatal server error:
Caught signal 11(Segmentation fault). Server aborting

*** when switching driver to "vesa" xorg work, so it's 100% vboxvideo issue

- on 10.1-release i get another error:
(II) AIGLX: Screen 0 is not DRI2 capable
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 13, (OK)
drmOpenByBusid: Searching for BusID pci:0000:00:02.0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 13, (OK)
drmOpenByBusid: drmOpenMinor returns 13
drmOpenByBusid: Interface 1.4 failed, trying 1.1
drmOpenByBusid: drmGetBusid reports pci:0000:00:02.0
(EE) AIGLX error: dlopen of /usr/local/lib/dri/vboxvideo_dri.so failed(/usr/local/lib/dri/vboxvideo_dri.so: Shared object has no run-time symbol table)
Comment 9 Jung-uk Kim freebsd_committer freebsd_triage 2014-12-01 17:42:50 UTC
(In reply to vxdwrttc from comment #8)
> I have tested on both FreeBSD 10.1, and FreeBSD 10, both freeze the X
> inserting ctrl+alt+del reboots the machine so the machine still works just X
> is broken, after checking Xorg.0.log I have noticed these errors:
> 
> - on 10.0 i get:
> (II) AIGLX: Screen 0 is not DRI2 capable
> drmOpenDevice: node name is /dev/dri/card0
> drmOpenDevice: open result is 13, (OK)
> drmOpenByBusid: Searching for BusID pci:0000:00:02.0
> drmOpenDevice: node name is /dev/dri/card0
> drmOpenDevice: open result is 13, (OK)
> drmOpenByBusid: drmOpenMinor returns 13
> drmOpenByBusid: Interface 1.4 failed, trying 1.1
> drmOpenByBusid: drmGetBusid reports pci:0000:00:02.0
> (II) Next line is added to allow vboxvideo_drv.so to appear as whitelisted
> driver
> (II) The file referenced, is *NOT* loaded
> (II) Loading /usr/local/lib/xorg/modules/drivers//ati_drv.so
> (EE) AIGLX error: vboxvideo does not export required DRI extension
> Segmentation fault at address 0x80403948
> Fatal server error:
> Caught signal 11(Segmentation fault). Server aborting
> 
> *** when switching driver to "vesa" xorg work, so it's 100% vboxvideo issue
> 
> - on 10.1-release i get another error:
> (II) AIGLX: Screen 0 is not DRI2 capable
> drmOpenDevice: node name is /dev/dri/card0
> drmOpenDevice: open result is 13, (OK)
> drmOpenByBusid: Searching for BusID pci:0000:00:02.0
> drmOpenDevice: node name is /dev/dri/card0
> drmOpenDevice: open result is 13, (OK)
> drmOpenByBusid: drmOpenMinor returns 13
> drmOpenByBusid: Interface 1.4 failed, trying 1.1
> drmOpenByBusid: drmGetBusid reports pci:0000:00:02.0
> (EE) AIGLX error: dlopen of /usr/local/lib/dri/vboxvideo_dri.so
> failed(/usr/local/lib/dri/vboxvideo_dri.so: Shared object has no run-time
> symbol table)

You *must* turn off AIGLX unless you're rebuilding everything with WITHOUT_NEW_XORG because we do not have KMS-capable vboxvideo driver, e.g., add the following lines in /etc/xorg.conf.

Section "ServerFlags"
    Option "AIGLX" "false"
EndSection
Comment 10 vxdwrttc 2014-12-01 19:14:43 UTC
After adding that stuff to my xorg.conf it works. Thanks!