Announcement

Collapse
No announcement yet.

Updated and Optimized Ubuntu Free Graphics Drivers

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • oibaf
    started a topic Updated and Optimized Ubuntu Free Graphics Drivers

    Updated and Optimized Ubuntu Free Graphics Drivers

    Note: Phoronix disabled editing forum posts some time ago, so check the main PPA page for updated informations!


    0 - Introduction

    Some year ago I wrote a guide on Installing latest Open Source ATI drivers under Ubuntu to provide the new - at the time - Radeon R500 support with free drivers.

    Now Ubuntu 11.04 (natty) just get released shipping latest official mesa release 7.10.2. However current mesa snapshots have a huge amount of new features which make feel old this official release. Ubuntu 10.10 (maverick) ships an older pre-release snapshot of mesa 7.9.

    So I am now providing a PPA with updated mesa and X drivers as an easy way for users to try all the new features developed in the past months and early detect eventual bugs to report to developers. This is somewhat inspired by the xorg-edgers PPA but it only provides graphics drivers to lower the risk of breakage. Also I want to provide some packaging improvements and possibly new features (e.g. integrate testing branches like glsl-130 or pipe-video) when they'll be sufficient stable.

    Supported Ubuntu versions: 10.10 (maverick) and 11.04 (natty).

    1 - Improvements

    Mesa improvements:

    Note that being snapshots they may also have new bugs.

    Mesa packaging improvements:
    • support for S3TC texture compression* (Recommends included libtxc-dxtn)
    • support for floating-point textures*
    • llvm support (for faster gallium drivers)
    • gallium llvmpipe as the default software renderer rather than classic swrast
    • i915 and nouveau gallium drivers in the experimental package
    • --enable-debug flag (to better debug mesa and games bugs)
    • better package compression with 50% binary size reduction (for faster download)
    • custom OpenGL version string to make sure you are running drivers from this PPA


    *these are patented features that can be used after agreeing the related IP: ARB_texture_float and EXT_texture_compression_s3tc. They are provided here for testing purpose only, anyway.

    For more details check the changelog.

    Updated drivers and libdrm from git:


    Only free drivers will be provided. No binary fglrx and nvidia drivers.

    2 - Installing
    Just type this in a terminal:

    Code:
    sudo add-apt-repository ppa:oibaf/graphics-drivers
    sudo apt-get update
    sudo apt-get dist-upgrade
    Alternatively, add:
    Code:
    ppa:oibaf/graphics-drivers
    to your system's Software Sources and update the package from here.

    If all goes well, and if glxinfo is installed, typing in a shell:
    Code:
    glxinfo | grep OpenGL
    will print the driver type and version with the PPA custom string.

    3 - Using alternative drivers
    Examples on how to run your OpenGL program (in this case glxgears -info) with non default drivers.

    To force the use of gallium llvmpipe software render:
    Code:
    LIBGL_ALWAYS_SOFTWARE=1 glxgears -info
    To force the use of old non-gallium software render:
    Code:
    LIBGL_ALWAYS_SOFTWARE=1 LIBGL_DRIVERS_PATH=/usr/lib/dri-alternates glxgears -info
    To force the use of old non-gallium r300/r600 radeon drivers:
    Code:
    LIBGL_DRIVERS_PATH=/usr/lib/dri-alternates glxgears -info
    Experimental drivers:
    If you want to use the gallium nouveau or i915 driver install also the experimental package:
    Code:
    sudo apt-get install libgl1-mesa-dri-experimental
    The gallium nouveau driver will then be used by default rather than using llvmpipe.

    To force the use of gallium i915 driver (classic driver will still be the default):
    Code:
    LIBGL_DRIVERS_PATH=/usr/lib/dri-alternates glxgears -info
    4 - Debugging and reporting problems

    If you have some problem with the drivers try running the application from the command line and see if there are any graphics related warnings (note that mesa is built with --enable-debug which can provide useful debug informations). Also type dmesg to see if there are other related informations here. If you get crashes install the relevant -dbg pacakges (libgl1-mesa-dri-dbg or libgl1-mesa-dri-experimental-dbg for 3D drivers and xserver-xorg-video-intel-dbg , xserver-xorg-video-nouveau-dbg or xserver-xorg-video-radeon-dbg for X drivers) and reproduce the crash with gdb. Example:
    Code:
    $ gdb glxgears
    [...make your application crash and then get a backtrace with:]
    (gdb) bt
    If X.org crashes look at /var/log/Xorg.0.log (or /var/log/Xorg.0.log.old when a new X session is started after the crash).

    With the gathered informations try querying freedesktop bugzilla for similar bugs (also try with google). If no bugs were already reported, you may want to report a new one:


    5 - Revert to original drivers
    To revert to standard Ubuntu drivers (strongly suggested before an Ubuntu release upgrade) type the following in a prompt shell:
    Code:
    sudo apt-get install ppa-purge
    sudo ppa-purge ppa:oibaf/graphics-drivers
    6 - Requests and suggestions
    Feel free to request new features or propose any suggestions here!
    Last edited by oibaf; 05-26-2017, 11:20 AM.

  • ausymark
    replied
    Firstly thanks oibaf for your excellent work over the years

    Now onto the buglett:
    Running Messa 17.4 Podaka PPA under Ubuntu 17.10 using AMD/ATI video card (RX 480) and an AMD Ryzen 1700. (Though I'm sure its a graphics driver/system related issue, not a CPU issue) This is an OpenCL error. Seti@home, via BOINC, using proprietary AMDGPU-Pro drivers for OpenCL, works as expected so it is likely that there is either a bug, or something unfinished, in the Open Source OpenCL driver that is failing. As a side note, in 2015 this issue hit the nVidia side of things generating this issue: http://setiathome.berkeley.edu/forum...=77133#1665089 This might give you an idea of what may be occurring in the AMD / OpenCL driver side of things. I have also reported the issue over at bugs.freedesktop.org I am reporting the bug here as well as I know key stakeholders are here. I hope it is an easy fix Cheers

    Leave a comment:


  • murzic2000
    replied
    Add fresh
    /var/log/syslog:

    Dec 2 20:46:37 mediaBOX xinit[1221]: radeon: failed to get initial domain: 0x46468c0 0x0000000C
    Dec 2 20:46:37 mediaBOX xinit[1221]: radeon: The kernel rejected CS, see dmesg for more information (-22).
    Dec 2 20:46:37 mediaBOX kernel: [ 689.482331] radeon 0000:00:01.0: evergreen_cs_track_validate_texture:854 texture bo too small (layer size 8355840, offset 0, max layer 1, depth 1, bo size 4096) (1920 1088)
    Dec 2 20:46:37 mediaBOX kernel: [ 689.482486] [drm:radeon_cs_ioctl [radeon]] *ERROR* Invalid command stream !
    Dec 2 20:46:37 mediaBOX kernel: [ 689.499115] radeon 0000:00:01.0: evergreen_cs_track_validate_texture:854 texture bo too small (layer size 8355840, offset 0, max layer 1, depth 1, bo size 4096) (1920 1088)
    Dec 2 20:46:37 mediaBOX kernel: [ 689.499233] [drm:radeon_cs_ioctl [radeon]] *ERROR* Invalid command stream !
    Dec 2 20:46:37 mediaBOX kernel: [ 689.515260] kodi.bin[1890]: segfault at b0 ip 00007fe6326fd8f8 sp 00007fff3b03c0d0 error 4 in r600_dri.so[7fe631ef1000+ab5000]
    Dec 2 20:46:37 mediaBOX xinit[1221]: radeon: The kernel rejected CS, see dmesg for more information (-22).
    Dec 2 20:46:37 mediaBOX lircd-0.9.0[917]: removed client
    Dec 2 20:46:37 mediaBOX xinit[1221]: Segmentation fault
    Dec 2 20:46:37 mediaBOX xinit[1221]: Crash report available at /home/xbmc/kodi_crashlog-20171202_204637.log
    Dec 2 20:46:38 mediaBOX lircd-0.9.0[917]: accepted new client on /run/lirc/lircd

    Leave a comment:


  • murzic2000
    replied
    Hello,
    I have a problem with playing video. I updated some days ago (18 Nov) and after that my Kodi start crashes when I try to use vdpau (Xorg crash). I think that problem with mesa packet.
    I uses this repo: https://launchpad.net/~oibaf

    Ubuntu 16.04.3 LTS
    Linux pc 4.4.0-101-generic #124-Ubuntu SMP Fri Nov 10 18:29:59 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
    Kodi 17.6
    Xorg.0.log: https://pastebin.com/XmNu7B8C
    Kodi CRASH LOG: https://pastebin.com/cu4AFf3G
    syslog: https://pastebin.com/Pa2SrewQ
    dmesg: https://pastebin.com/y2k9298Z

    If you need more information or other debug info I can provide it.

    Leave a comment:


  • Rich_S
    replied
    Originally posted by Rich_S View Post
    Ubuntu 17.10 running on an Intel 8700K with iGPU(i915) and updated yesterday and it completely broke Wayland. Major pixelation and flicker (stops momentarily if I move my mouse). I'm able to switch to Xorg and login fine though, so it's Wayland specific. Following packages were updated:

    libgl1-mesa libgbm1 libgl1-mesa-dri libgl1-mesa-glx libglapi-mesa
    libgles2-mesa libwayland-egl1-mesa libxtracker2 mesa-va-drivers
    mesa-vdpau-drivers

    Any ideas?
    Well, today's update fixed it.

    Leave a comment:


  • Rich_S
    replied
    Ubuntu 17.10 running on an Intel 8700K with iGPU(i915) and updated yesterday and it completely broke Wayland. Major pixelation and flicker (stops momentarily if I move my mouse). I'm able to switch to Xorg and login fine though, so it's Wayland specific. Following packages were updated:

    libgl1-mesa libgbm1 libgl1-mesa-dri libgl1-mesa-glx libglapi-mesa
    libgles2-mesa libwayland-egl1-mesa libxtracker2 mesa-va-drivers
    mesa-vdpau-drivers

    Any ideas?

    Leave a comment:


  • Xzuukh
    replied
    Hello, I just updated the drivers, and a wild flicker appeared. Apparently the previous versions are no longer in the PPA so I can't revert?

    I think these are the relevant packages, so one of them probably has the issue. After these updates my game started showing huge graphical glitches. The main menu flickers (but it stops flickering briefly if I adjust graphical settings). The game itself is an unplayable mess. There's something about shaders.

    Anyway, grepped apt's history log with "oibaf":

    Code:
    libgles2-mesa:amd64 (17.4~git1711021930.529cdc~oibaf~x, 17.4~git1711121930.4a9aad~oibaf~x)
    xserver-xorg-video-nouveau:amd64 (1:1.0.15+git1706131933.69aecd~gd~x, 1:1.0.15+git1711031457.69aecd~oibaf~x)
    libdrm-nouveau2:amd64 (2.4.87+git1711010826.b617f0~gd~x, 2.4.88+git1711110630.218858~oibaf~x)
    libdrm-nouveau2:i386 (2.4.87+git1711010826.b617f0~gd~x, 2.4.88+git1711110630.218858~oibaf~x)
    libglapi-mesa:amd64 (17.4~git1711021930.529cdc~oibaf~x, 17.4~git1711121930.4a9aad~oibaf~x)
    libglapi-mesa:i386 (17.4~git1711021930.529cdc~oibaf~x, 17.4~git1711121930.4a9aad~oibaf~x)
    libxatracker2:amd64 (17.4~git1711021930.529cdc~oibaf~x, 17.4~git1711121930.4a9aad~oibaf~x)
    libegl1-mesa:amd64 (17.4~git1711021930.529cdc~oibaf~x, 17.4~git1711121930.4a9aad~oibaf~x)
    libgbm1:amd64 (17.4~git1711021930.529cdc~oibaf~x, 17.4~git1711121930.4a9aad~oibaf~x)
    libdrm-amdgpu1:amd64 (2.4.87+git1711010826.b617f0~gd~x, 2.4.88+git1711110630.218858~oibaf~x)
    libdrm-amdgpu1:i386 (2.4.87+git1711010826.b617f0~gd~x, 2.4.88+git1711110630.218858~oibaf~x)
    libllvm5.0:amd64 (1:5.0-1~gd~x, 1:5.0.1~+rc1-1~exp1~oibaf~x)
    libllvm5.0:i386 (1:5.0-1~gd~x, 1:5.0.1~+rc1-1~exp1~oibaf~x)
    xserver-xorg-video-intel:amd64 (2:2.99.917+git1707181934.e436cf~gd~x, 2:2.99.917+git1711090734.37a682~oibaf~x)
    libwayland-egl1-mesa:amd64 (17.4~git1711021930.529cdc~oibaf~x, 17.4~git1711121930.4a9aad~oibaf~x)
    libdrm2:amd64 (2.4.87+git1711010826.b617f0~gd~x, 2.4.88+git1711110630.218858~oibaf~x)
    libdrm2:i386 (2.4.87+git1711010826.b617f0~gd~x, 2.4.88+git1711110630.218858~oibaf~x)
    libgl1-mesa-dri:amd64 (17.4~git1711021930.529cdc~oibaf~x, 17.4~git1711121930.4a9aad~oibaf~x)
    libgl1-mesa-dri:i386 (17.4~git1711021930.529cdc~oibaf~x, 17.4~git1711121930.4a9aad~oibaf~x)
    libosmesa6:amd64 (17.4~git1711021930.529cdc~oibaf~x, 17.4~git1711121930.4a9aad~oibaf~x)
    libosmesa6:i386 (17.4~git1711021930.529cdc~oibaf~x, 17.4~git1711121930.4a9aad~oibaf~x)
    libgl1-mesa-glx:amd64 (17.4~git1711021930.529cdc~oibaf~x, 17.4~git1711121930.4a9aad~oibaf~x)
    libgl1-mesa-glx:i386 (17.4~git1711021930.529cdc~oibaf~x, 17.4~git1711121930.4a9aad~oibaf~x)
    libdrm-intel1:amd64 (2.4.87+git1711010826.b617f0~gd~x, 2.4.88+git1711110630.218858~oibaf~x)
    libdrm-intel1:i386 (2.4.87+git1711010826.b617f0~gd~x, 2.4.88+git1711110630.218858~oibaf~x)
    libdrm-radeon1:amd64 (2.4.87+git1711010826.b617f0~gd~x, 2.4.88+git1711110630.218858~oibaf~x)
    libdrm-radeon1:i386 (2.4.87+git1711010826.b617f0~gd~x, 2.4.88+git1711110630.218858~oibaf~x)
    mesa-vdpau-drivers:amd64 (17.4~git1711021930.529cdc~oibaf~x, 17.4~git1711121930.4a9aad~oibaf~x)

    Leave a comment:


  • DarkFoss
    replied
    I encountered no issues enabling and after a few days purging your ppa on 17.10 went quite smooth both ways. Nice work

    Leave a comment:


  • oibaf
    replied
    To artful/17.10 users: I just uploaded updated, rebased mesa packages, I disabled some stuff which probably isn't very useful nowadays: XvMC and OpenMAX video drivers, optional classic swrast and broken gallium i915.
    Please test and let me know.

    Leave a comment:


  • oibaf
    replied
    The issue on 17.10 should be fixed now.

    Leave a comment:

Working...
X