Rhel

opengl/glx 核心轉儲 - 通用 intel linux 驅動程序,RHEL6

  • August 8, 2013

最近,我從使用專用 ATI 顯卡和專有驅動程序切換到板載 Intel 顯卡和預設/通用 Intel 驅動程序,因為 ATI 顯卡已損壞,我無法讓專有驅動程序與我的 X 伺服器很好地執行。

無論如何,現在每當使用 OpenGL 的程序執行時,我都會得到核心轉儲。例如:

[birdsnest ~]% glxinfo -v  
name of display: :0
zsh: segmentation fault (core dumped)  glxinfo -v

我的 ̶ / var / log / ̶x̶o̶r̶g̶.̶0̶.̶l̶o̶g̶, ̶ 中沒有任何 ̶s̶u̶s̶p̶i̶c̶i̶o̶u̶s̶ 並且所有看起來都很好:̶

[    33.580] (II) LoadModule: "glx"
[    33.604] (II) Loading /usr/lib64/xorg/modules/extensions/libglx.so
[    33.645] (II) Module glx: vendor="Advanced Micro Devices, Inc."
[    33.645]    compiled for 6.9.0, module version = 1.0.0
[    33.645] Loading extension GLX
[    33.645] (==) Matched intel as autoconfigured driver 0
[    33.645] (==) Matched vesa as autoconfigured driver 1
[    33.645] (==) Matched modesetting as autoconfigured driver 2
[    33.645] (==) Matched fbdev as autoconfigured driver 3
[    33.645] (==) Assigned the driver to the xf86ConfigLayout
[    33.645] (II) LoadModule: "intel"
[    33.645] (II) Loading /usr/lib64/xorg/modules/drivers/intel_drv.so
[    33.700] (II) Module intel: vendor="X.Org Foundation"
[    33.700]    compiled for 1.12.99.905, module version = 2.20.2
[    33.700]    Module class: X.Org Video Driver
[    33.700]    ABI class: X.Org Video Driver, version 13.0
[    33.700] (II) LoadModule: "vesa"
[    33.700] (II) Loading /usr/lib64/xorg/modules/drivers/vesa_drv.so
[    33.709] (II) Module vesa: vendor="X.Org Foundation"
[    33.709]    compiled for 1.13.0, module version = 2.3.2
[    33.709]    Module class: X.Org Video Driver
[    33.709]    ABI class: X.Org Video Driver, version 13.0
[    33.709] (II) LoadModule: "modesetting"
[    33.710] (II) Loading /usr/lib64/xorg/modules/drivers/modesetting_drv.so
[    33.723] (II) Module modesetting: vendor="X.Org Foundation"
[    33.723]    compiled for 1.13.0, module version = 0.5.0
[    33.723]    Module class: X.Org Video Driver
[    33.723]    ABI class: X.Org Video Driver, version 13.0
[    33.723] (II) LoadModule: "fbdev"
[    33.723] (II) Loading /usr/lib64/xorg/modules/drivers/fbdev_drv.so
[    33.731] (II) Module fbdev: vendor="X.Org Foundation"
[    33.731]    compiled for 1.12.99.905, module version = 0.4.3
[    33.731]    Module class: X.Org Video Driver
[    33.731]    ABI class: X.Org Video Driver, version 13.0
[    33.731] (II) intel: Driver for Intel Integrated Graphics Chipsets: i810,
       i810-dc100, i810e, i815, i830M, 845G, 854, 852GM/855GM, 865G, 915G,
       E7221 (i915), 915GM, 945G, 945GM, 945GME, Pineview GM, Pineview G,
       965G, G35, 965Q, 946GZ, 965GM, 965GME/GLE, G33, Q35, Q33, GM45,
       4 Series, G45/G43, Q45/Q43, G41, B43, B43, Clarkdale, Arrandale,
       Sandybridge Desktop (GT1), Sandybridge Desktop (GT2),
       Sandybridge Desktop (GT2+), Sandybridge Mobile (GT1),
       Sandybridge Mobile (GT2), Sandybridge Mobile (GT2+),
       Sandybridge Server, Ivybridge Mobile (GT1), Ivybridge Mobile (GT2),
       Ivybridge Desktop (GT1), Ivybridge Desktop (GT2), Ivybridge Server,
       Ivybridge Server (GT2)
[    33.731] (II) VESA: driver for VESA chipsets: vesa
[    33.731] (II) modesetting: Driver for Modesetting Kernel Drivers: kms
[    33.731] (II) FBDEV: driver for framebuffer: fbdev
[    33.731] (++) using VT number 1

編輯:來自核心轉儲的回溯(我不知道這有多大用處或如何使用它):

Core was generated by `glxinfo -l'.
Program terminated with signal 11, Segmentation fault.
#0  0x000000341ea0a240 in xcb_glx_query_server_string_string_length () from /usr/lib64/libxcb-glx.so.0
Missing separate debuginfos, use: debuginfo-install glx-utils-9.0-0.8.el6_4.3.x86_64
(gdb) bt
#0  0x000000341ea0a240 in xcb_glx_query_server_string_string_length () from /usr/lib64/libxcb-glx.so.0
#1  0x00000031fa444bf4 in __glXQueryServerString () from /usr/lib64/libGL.so.1
#2  0x00000031fa420ca0 in ?? () from /usr/lib64/libGL.so.1
#3  0x00000031fa41d92d in ?? () from /usr/lib64/libGL.so.1
#4  0x00000031fa41ea8f in glXChooseVisual () from /usr/lib64/libGL.so.1
#5  0x000000000040163e in ?? ()
#6  0x0000000000402d8a in ?? ()
#7  0x000000340c61ecdd in __libc_start_main () from /lib64/libc.so.6
#8  0x0000000000401179 in ?? ()
#9  0x00007fffd0ae5628 in ?? ()
#10 0x000000000000001c in ?? ()
#11 0x0000000000000002 in ?? ()
#12 0x00007fffd0ae74d2 in ?? ()
#13 0x00007fffd0ae74da in ?? ()
#14 0x0000000000000000 in ?? ()

所以我不確定這是驅動程序問題還是其他問題,我不知道如何調試。有人知道我應該如何調試這個問題嗎?

編輯:我剛剛注意到Module glx: vendor="Advanced Micro Devices, Inc."我的 xorg 日誌中的行。我注意到該文件的最後修改時間是相當近的——大約在我安裝 ATI 影片驅動程序的時候。當我安裝專有的 ATI 驅動程序時,這個庫是否可能被破壞?

我想到了。正如我所懷疑的,AMD 想要使用的共享庫與 Intel 驅動程序使用的共享庫之間存在衝突。解決方案是解除安裝 AMD 驅動程序。我通過在/usr/share/ati. 在我執行這個腳本之後,我不得不恢復我/etc/X11/xorg.conf一直在使用英特爾驅動程序的那個,因為解除安裝腳本試圖破壞它。

引用自:https://unix.stackexchange.com/questions/79701