Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • mesa mesa
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 3,061
    • Issues 3,061
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 993
    • Merge requests 993
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • MesaMesa
  • mesamesa
  • Issues
  • #4368
Closed
Open
Issue created Feb 28, 2021 by lorn10@lorn10

i965 (Sandy Bridge) misses blitImage functionality (please add it)

System information

  • OS:
NAME="Ubuntu"
VERSION="20.04.2 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04.2 LTS"
VERSION_ID="20.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal
  • GPU:
*-display
       description: VGA compatible controller
       product: Whistler [Radeon HD 6730M/6770M/7690M XT] [1002:6740]
       vendor: Advanced Micro Devices, Inc. [AMD/ATI] [1002]
       physical id: 0
       bus info: pci@0000:01:00.0
       version: 00
       width: 64 bits
       clock: 33MHz
       capabilities: pm pciexpress msi vga_controller bus_master cap_list rom
       configuration: driver=radeon latency=0
       resources: irq:50 memory:90000000-9fffffff memory:a8800000-a881ffff ioport:2000(size=256) memory:a8820000-a883ffff
*-display
       description: Display controller
       product: 2nd Generation Core Processor Family Integrated Graphics Controller [8086:102]
       vendor: Intel Corporation [8086]
       physical id: 2
       bus info: pci@0000:00:02.0
       version: 09
       width: 64 bits
       clock: 33MHz
       capabilities: msi pm bus_master cap_list
       configuration: driver=i915 latency=0
       resources: irq:49 memory:a8000000-a83fffff memory:a0000000-a7ffffff ioport:3000(size=64)
  • Kernel version:
Linux test-iMac 5.4.0-66-generic #74-Ubuntu SMP Wed Jan 27 22:54:38 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
  • Mesa version:
name of display: :0
display: :0  screen: 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
    Vendor: X.Org (0x1002)
    Device: AMD TURKS (DRM 2.50.0 / 5.4.0-66-generic, LLVM 11.0.0) (0x6740)
    Version: 20.2.6
    Accelerated: yes
    Video memory: 512MB
    Unified memory: no
    Preferred profile: core (0x1)
    Max core profile version: 3.3
    Max compat profile version: 3.1
    Max GLES1 profile version: 1.1
    Max GLES[23] profile version: 3.1
Memory info (GL_ATI_meminfo):
    VBO free memory - total: 511 MB, largest block: 511 MB
    VBO free aux. memory - total: 1021 MB, largest block: 1021 MB
    Texture free memory - total: 511 MB, largest block: 511 MB
    Texture free aux. memory - total: 1021 MB, largest block: 1021 MB
    Renderbuffer free memory - total: 511 MB, largest block: 511 MB
    Renderbuffer free aux. memory - total: 1021 MB, largest block: 1021 MB
Memory info (GL_NVX_gpu_memory_info):
    Dedicated video memory: 512 MB
    Total available memory: 1533 MB
    Currently available dedicated video memory: 511 MB
OpenGL vendor string: X.Org
OpenGL renderer string: AMD TURKS (DRM 2.50.0 / 5.4.0-66-generic, LLVM 11.0.0)
OpenGL core profile version string: 3.3 (Core Profile) Mesa 20.2.6
OpenGL core profile shading language version string: 3.30
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile

OpenGL version string: 3.1 Mesa 20.2.6
OpenGL shading language version string: 1.40
OpenGL context flags: (none)

OpenGL ES profile version string: OpenGL ES 3.1 Mesa 20.2.6
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.10
  • Xserver version:
X.Org X Server 1.20.9
X Protocol Version 11, Revision 0
Build Operating System: Linux 4.15.0-130-generic x86_64 Ubuntu
Current Operating System: Linux test-iMac 5.4.0-66-generic #74-Ubuntu SMP Wed Jan 27 22:54:38 UTC 2021 x86_64
Kernel command line: ro root=UUID=0611c7b6-3d07-4592-b622-d3240df90979 initrd=boot\initrd.img-5.4.0-66-generic
Build Date: 17 January 2021  09:13:31AM
xorg-server 2:1.20.9-2ubuntu1.2~20.04.1 (For technical support please see http://www.ubuntu.com/support) 
Current version of pixman: 0.38.4
        Before reporting problems, check http://wiki.x.org
        to make sure that you have the latest version.
  • Desktop manager and compositor:
KDE-Plasma-Version 5.18.5

Description

After intensive research I can confirm that the i965 driver lacks the blitImage functionality. That feature seems to be necessary on (some) multi GPU systems. Without a proper blitImage support, the alternative GPU cannot be used. More information regarding this matter can be found at the following bug report here (check comment 12 by AMD developer Michel Dänzer):

https://bugs.freedesktop.org/show_bug.cgi?id=111272#c12

In my case, if I enforce the use of the second (Intel) iGPU with DRI_PRIME=1 in /etc/environment, the X server is crashing right before a new login attempt is performed (restart of X). The only thing which is visible (for a very short time) is the mouse cursor. That behavior is 100% reproducible and occurs every time when the use of the second iGPU is enforced.

That problem seems to exist (in different form) also at other systems. https://github.com/lutris/agora/issues/22

Regression

No alternative solution or workaround exists to fix this problem. Switching off the integrated Intel iGPU in the UEFI firmware may help in certain situations to avoid that some gaming software like Lutris may work incorrectly.

some GPU related DMESG logs

libGL error: Different GPU, but blitImage not implemented for this driver
libGL error: failed to load driver: i965
[    1.279421] i915 0000:00:02.0: BAR 6: can't assign [??? 0x00000000 flags 0x20000000] (bogus alignment)
[    1.279422] [drm] Failed to find VBIOS tables (VBT)

Extra information

The used system is an Apple iMac 12,2 which contains two GPUs. Linux is running in UEFI mode. In contrast to most other systems, the discrete Radeon graphics is the main GPU 0. The Intel Sandy Bridge HD iGPU is the second GPU 1. It seems that Apple did not intend to use the built-in GPU on those computers. So a further problem may be an incomplete setup or "activation" of the iGPU in the Apple EFI firmware.

Update 05.03.2021:

I have found in my logs a "firmware bug" called note which may be also relevant here:

[ 1.030982] [Firmware Bug]: ACPI(GFX0) defines _DOD but not _DOS

According to the following ACPI 5.0 information, the _DOD function seems to be needed for "output switching" (aka GPU switching?) and not the _DOS one. (https://docs.microsoft.com/en-us/windows-hardware/drivers/bringup/other-acpi-namespace-objects). Well, this is my understanding of that quite complex topic. It could also be different. ;-)

Edited Mar 05, 2021 by lorn10
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking