Slackware 当前和 Radeon HD 6450:基于 OpenGL

Slackware 当前和 Radeon HD 6450:基于 OpenGL

我已经升级到 Slackware 当前版本(从 14.1 开始),除了 OpenGL 之外,一切都工作得很好。 Fglrx 15.302 无法针对正在运行的内核 (4.4.5) 进行编译,因此我决定坚持使用免费驱动程序。然而,尽管一切看起来都很好,但它根本不起作用:

 lsmod | egrep 'amdgpu|radeon'
amdgpu                574775  0
radeon               1440055  2
hwmon                   3287  3 k10temp,amdgpu,radeon
ttm                    71787  2 amdgpu,radeon
drm_kms_helper        108360  2 amdgpu,radeon
drm                   277256  6 ttm,drm_kms_helper,amdgpu,radeon
i2c_algo_bit            5190  2 amdgpu,radeon
i2c_core               41745  7 drm,i2c_dev,i2c_piix4,drm_kms_helper,i2c_algo_bit,amdgpu,radeon

Xorg.0.log 提到加载 GLX 扩展:

[  1427.634] (II) LoadModule: "glx"
[  1427.635] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[  1427.647] (II) Module glx: vendor="X.Org Foundation"
[  1427.647] (==) AIGLX enabled
[  1427.647] (==) Assigned the driver to the xf86ConfigLayout
<snip the list of cards>
 [ 75978.088] (II) GLX: Initialized DRI2 GL provider for screen 0
[ 76004.515] (II) AIGLX: enabled GLX_MESA_copy_sub_buffer
[ 76004.515] (II) AIGLX: enabled GLX_ARB_create_context
[ 76004.515] (II) AIGLX: enabled GLX_ARB_create_context_profile
[ 76004.515] (II) AIGLX: enabled GLX_EXT_create_context_es{,2}_profile
[ 76004.515] (II) AIGLX: enabled GLX_INTEL_swap_event
[ 76004.515] (II) AIGLX: enabled GLX_SGI_swap_control and GLX_MESA_swap_control
[ 76004.515] (II) AIGLX: enabled GLX_EXT_framebuffer_sRGB
[ 76004.515] (II) AIGLX: enabled GLX_ARB_fbconfig_float
[ 76004.515] (II) AIGLX: enabled GLX_EXT_fbconfig_packed_float
[ 76004.515] (II) AIGLX: GLX_EXT_texture_from_pixmap backed by buffer objects
[ 76004.515] (II) AIGLX: enabled GLX_ARB_create_context_robustness
[ 76004.516] (II) AIGLX: Loaded and initialized r600
[ 76004.516] (II) GLX: Initialized DRI2 GL provider for screen 0

然而,任何 GL 应用程序都会因以下错误而崩溃:

 glxgears
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  154 (GLX)
  Minor opcode of failed request:  3 (X_GLXCreateContext)
  Value in failed request:  0x0
  Serial number of failed request:  21
  Current serial number in output stream:  23
glxinfo
name of display: :0
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  154 (GLX)
  Minor opcode of failed request:  24 (X_GLXCreateNewContext)
  Value in failed request:  0x0
  Serial number of failed request:  16
  Current serial number in output stream:  21

任何想法?我错过了什么?

答案1

实际上,问题来自于 NVIDIA 安装程序的一个古老遗迹:

/usr/lib/libXvMCNVIDIA.so.96.43.11

删除所有孤立的 NVIDIA 文件解决了问题!

相关内容