Bug 60016 - After automake merge two different GPU (AMD + NVIDIA) willnot work on same machine
Summary: After automake merge two different GPU (AMD + NVIDIA) willnot work on same ma...
Status: RESOLVED WORKSFORME
Alias: None
Product: Mesa
Classification: Unclassified
Component: Other (show other bugs)
Version: git
Hardware: Other All
: medium normal
Assignee: mesa-dev
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 59304
  Show dependency treegraph
 
Reported: 2013-01-29 13:38 UTC by Alexey Shvetsov
Modified: 2013-12-26 06:37 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments
dmesg (88.76 KB, text/plain)
2013-01-29 13:38 UTC, Alexey Shvetsov
Details
dmesg Axel (26.03 KB, text/plain)
2013-07-09 08:33 UTC, Axel
Details
kernel config Axel (89.48 KB, text/plain)
2013-07-09 08:42 UTC, Axel
Details
xorg.conf Axel (2.41 KB, text/plain)
2013-07-09 08:44 UTC, Axel
Details
result of "LIBGL_DEBUG=verbose glxinfo" when working. (44.13 KB, text/plain)
2013-07-09 08:46 UTC, Axel
Details

Description Alexey Shvetsov 2013-01-29 13:38:43 UTC
Created attachment 73828 [details]
dmesg

If you have AMD + NVIDIA cards on same machine e.g.
01:00.0 VGA compatible controller: Advanced Micro Devices [AMD] nee ATI Turks [Radeon HD 6670]
02:00.0 VGA compatible controller: NVIDIA Corporation GF106 [GeForce GTS 450] (rev a1)

and build recent mesa from git you'll get segafault of r600g_dri.so and erros like this
$ LIBGL_DEBUG=verbose glxinfo 
name of display: :0
libGL: OpenDriver: trying /usr/lib64/dri/tls/r600_dri.so
libGL: OpenDriver: trying /usr/lib64/dri/r600_dri.so
libGL: Can't open configuration file /home/alexxy/.drirc: No such file or directory.
libGL: OpenDriver: trying /usr/lib64/dri/tls/nouveau_dri.so
libGL: OpenDriver: trying /usr/lib64/dri/nouveau_dri.so
do_winsys_init: DRM version is 1.1.0 but this driver is only compatible with 2.3.x (kernel 2.6.34) or later.
libGL error: failed to create dri screen
libGL error: failed to load driver: nouveau
libGL: OpenDriver: trying /usr/lib64/dri/tls/swrast_dri.so
libGL: OpenDriver: trying /usr/lib64/dri/swrast_dri.so
Comment 1 Michel Dänzer 2013-01-29 16:56:45 UTC
(In reply to comment #1)
> libGL: OpenDriver: trying /usr/lib64/dri/nouveau_dri.so
> do_winsys_init: DRM version is 1.1.0 but this driver is only compatible with
> 2.3.x (kernel 2.6.34) or later.

This message is from src/gallium/winsys/radeon/drm/radeon_drm_winsys.c:do_winsys_init ...


> libGL error: failed to create dri screen
> libGL error: failed to load driver: nouveau

... but it appears while libGL tries to load nouveau_dri.so. So apparently either the former function was linked into nouveau_dri.so, or the latter ends up calling it from r600_dri.so somehow, e.g. due to symbol visibility issues.
Comment 2 Alexey Shvetsov 2013-01-30 03:24:40 UTC
Seems so. It was working before automake merge. Actualy i use dual monitor configuration here. One monitor (:0.0) conected to AMD video card, second one (:0.1) to Nvidia one. If I checkout some commit before 10.01.2013 then it will work. Also its hard to bisect because this configuration may hang up gpu and hard lock system, or produce artificial load on this system up to 800 due to this bug
Comment 3 Axel 2013-07-09 08:33:02 UTC
Created attachment 82216 [details]
dmesg Axel
Comment 4 Axel 2013-07-09 08:40:02 UTC
Hi, I was having almost exactly the same problem.

"
libGL: OpenDriver: trying /usr/lib64/dri/tls/r600_dri.so
libGL: OpenDriver: trying /usr/lib64/dri/r600_dri.so
libGL: Can't open configuration file /home/axel/.drirc: No such file or directory.
libGL: OpenDriver: trying /usr/lib64/dri/tls/nouveau_dri.so
libGL: OpenDriver: trying /usr/lib64/dri/nouveau_dri.so
do_winsys_init: DRM version is 1.1.1 but this driver is only compatible with 2.3.x (kernel 2.6.34) or later.
libGL error: failed to create dri screen
libGL error: failed to load driver: nouveau
libGL: OpenDriver: trying /usr/lib64/dri/tls/swrast_dri.so
libGL: OpenDriver: trying /usr/lib64/dri/swrast_dri.so
segmentation fault
"
om my gentoo install.

I managed "fix" it by downgrading to mesa 9.0.3 and adding the g3dvl flag to mesa 9.0.3.


I have tested mesa 9.0.3 9.1 9.1.1 9.1.2 9.1.2-r1 9.1.3 9.1.4 9.2_pre20130515 9.2_pre20130528 and 9.2_pre20130619 all from
http://packages.gentoo.org/package/media-libs/mesa .

I added my dmesg output, kernel config, xorg.conf and output from "LIBGL_DEBUG=verbose glxinfo" when it works
Comment 5 Axel 2013-07-09 08:42:20 UTC
Created attachment 82217 [details]
kernel config Axel
Comment 6 Axel 2013-07-09 08:44:29 UTC
Created attachment 82218 [details]
xorg.conf Axel
Comment 7 Axel 2013-07-09 08:46:18 UTC
Created attachment 82219 [details]
result of "LIBGL_DEBUG=verbose glxinfo" when working.
Comment 8 Axel 2013-12-26 06:37:18 UTC
Works in 10.0.1
But not in 9.2.5!

How not tested 
10.0.0
10.0.0_rc2
or 9.2.4

none working in 9.1.6
but works in 9.0.3


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.