Mesa 重新安装后,OpenGL 应用程序显示可怕的错误消息

Mesa 重新安装后,OpenGL 应用程序显示可怕的错误消息

在尝试了一些 PPA 来尝试在我的 Lenovo Ideapad 上的 Linux Mint 17.3 KDE 下升级 Mesa 驱动程序后,我似乎设法使一切恢复正常工作。然而现在,每当我尝试运行 OpenGL 程序时,我都会得到如下输出:

$ glxgears
libGL error: pci id for fd 4: 8086:1916, driver (null)   
i965_dri.so does not support the 0x1916 PCI ID.
libGL error: failed to create dri screen
libGL error: failed to load driver: i965

退出后,会出现这样的情况(或者是一个不寻常的段错误,与我自己的 allegro 相关项目):

XIO:  fatal IO error 11 (Resource temporarily unavailable) on X server ":0"
  after 13936 requests (13934 known processed) with 0 events remaining.

而程序显然运行正常。 (除此之外,glxgears 似乎不再像之前那样将自身限制在 60fps。)

以下是一些希望相关的输出:

$ lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation Sky Lake Integrated Graphics (rev 07)
$ dpkg -l | grep mesa
ii  libegl1-mesa:amd64                          10.1.3-0ubuntu0.6                                 amd64        free implementation of the EGL API -- runtime  
ii  libegl1-mesa-dev                            10.1.3-0ubuntu0.6                                 amd64        free implementation of the EGL API -- development files
ii  libegl1-mesa-drivers:amd64                  10.1.3-0ubuntu0.6                                 amd64        free implementation of the EGL API -- hardware drivers
rc  libegl1-mesa-lts-vivid:amd64                10.5.9-2ubuntu1~trusty2                           amd64        free implementation of the EGL API -- runtime
ii  libgl1-mesa-dev                             10.1.3-0ubuntu0.6                                 amd64        free implementation of the OpenGL API -- GLX development files
ii  libgl1-mesa-dri:amd64                       10.1.3-0ubuntu0.6                                 amd64        free implementation of the OpenGL API -- DRI modules
rc  libgl1-mesa-dri-lts-vivid:amd64             10.5.9-2ubuntu1~trusty2                           amd64        free implementation of the OpenGL API -- DRI modules
rc  libgl1-mesa-dri-lts-vivid:i386              10.5.9-2ubuntu1~trusty2                           i386         free implementation of the OpenGL API -- DRI modules
ii  libgl1-mesa-glx:amd64                       10.1.3-0ubuntu0.6                                 amd64        free implementation of the OpenGL API -- GLX runtime
ii  libgl1-mesa-glx:i386                        10.1.3-0ubuntu0.6                                 i386         free implementation of the OpenGL API -- GLX runtime
rc  libgl1-mesa-glx-lts-vivid:amd64             10.5.9-2ubuntu1~trusty2                           amd64        free implementation of the OpenGL API -- GLX runtime
rc  libgl1-mesa-glx-lts-vivid:i386              10.5.9-2ubuntu1~trusty2                           i386         free implementation of the OpenGL API -- GLX runtime
ii  libglapi-mesa:amd64                         10.1.3-0ubuntu0.6                                 amd64        free implementation of the GL API -- shared library
ii  libglapi-mesa:i386                          10.1.3-0ubuntu0.6                                 i386         free implementation of the GL API -- shared library
rc  libglapi-mesa-lts-vivid:amd64               10.5.9-2ubuntu1~trusty2                           amd64        free implementation of the GL API -- shared library
rc  libglapi-mesa-lts-vivid:i386                10.5.9-2ubuntu1~trusty2                           i386         free implementation of the GL API -- shared library
rc  libgles1-mesa-lts-vivid:amd64               10.5.9-2ubuntu1~trusty2                           amd64        free implementation of the OpenGL|ES 1.x API -- runtime
ii  libgles2-mesa:amd64                         10.1.3-0ubuntu0.6                                 amd64        free implementation of the OpenGL|ES 2.x API -- runtime
ii  libgles2-mesa-dev                           10.1.3-0ubuntu0.6                                 amd64        free implementation of the OpenGL|ES 2.x API -- development files
rc  libgles2-mesa-lts-vivid:amd64               10.5.9-2ubuntu1~trusty2                           amd64        free implementation of the OpenGL|ES 2.x API -- runtime
ii  libglu1-mesa:amd64                          9.0.0-2                                           amd64        Mesa OpenGL utility library (GLU)
ii  libglu1-mesa:i386                           9.0.0-2                                           i386         Mesa OpenGL utility library (GLU)
ii  libglu1-mesa-dev                            9.0.0-2                                           amd64        Mesa OpenGL utility library -- development files
ii  libmirclientplatform-mesa:amd64             0.1.8+14.04.20140411-0ubuntu1                     amd64        Display server for Ubuntu - client platform library for Mesa
ii  libopenvg1-mesa:amd64                       10.1.3-0ubuntu0.6                                 amd64        free implementation of the OpenVG API -- runtime
ii  libwayland-egl1-mesa:amd64                  10.1.3-0ubuntu0.6                                 amd64        implementation of the Wayland EGL platform -- runtime
rc  libwayland-egl1-mesa-lts-vivid:amd64        10.5.9-2ubuntu1~trusty2                           amd64        implementation of the Wayland EGL platform -- runtime
ii  mesa-common-dev                             10.1.3-0ubuntu0.6                                 amd64        Developer documentation for Mesa
ii  mesa-utils                                  8.1.0-2                                           amd64        Miscellaneous Mesa GL utilities

编辑:lspci -v 显示“正在使用的内核驱动程序”是“i915_bpo”。这应该是 i965 吗?

编辑:这是一些清理后的 glxinfo 输出:

name of display: :0
libGL error: pci id for fd 4: 8086:1916, driver (null)
i965_dri.so does not support the 0x1916 PCI ID.
libGL error: failed to create dri screen
libGL error: failed to load driver: i965
display: :0  screen: 0
direct rendering: Yes
server glx vendor string: SGI
server glx version string: 1.4
server glx extensions:
...
client glx vendor string: Mesa Project and SGI
client glx version string: 1.4
client glx extensions:
...
GLX version: 1.4
GLX extensions: 
...
OpenGL vendor string: VMware, Inc.
OpenGL renderer string: Gallium 0.4 on llvmpipe (LLVM 3.4, 256 bits)
OpenGL version string: 2.1 Mesa 10.1.3
OpenGL shading language version string: 1.30
OpenGL extensions:
...

编辑:这是一些格式化的 inxi 输出:

$ inxi -Gi
Graphics:  
Card: Intel Sky Lake Integrated Graphics
Display Server: X.Org 1.15.1 drivers: intel (unloaded: fbdev,vesa)
Resolution: [email protected]
GLX Renderer: Gallium 0.4 on llvmpipe (LLVM 3.4, 256 bits) 
GLX Version: 2.1 Mesa 10.1.3

编辑:更相关的输出

$ lsmod | grep 'i9' 
i915_bpo             1138688  3 
intel_ips              20480  1 i915_bpo
i2c_algo_bit           16384  1 i915_bpo
drm_kms_helper        126976  1 i915_bpo
drm                   344064  4 i915_bpo,drm_kms_helper
video                  20480  1 i915_bpo

$ modinfo i915_bpo
filename:       /lib/modules/3.19.0-32-generic/kernel/ubuntu/i915/i915_bpo.ko
license:        GPL and additional rights
description:    Intel Graphics
author:         Intel Corporation
author:         Tungsten Graphics, Inc.
firmware:       i915/skl_dmc_ver1.bin
srcversion:     55E14C24236445DE1BF5F67

编辑:实际上每个与 GL 相关的应用程序都以某种方式出现了行为不当;尤其是 GIMP。这些绝对不是我之前的驱动程序。尽管我早已手动删除了 ppa 文件,但 ppa-purge 也没有帮助。

相关内容