Bug #11850

Only software rendering (no hardware acceleration) on some AMD GPUs since 2.4

Added by Whitry 2016-09-28 16:11:36 . Updated 2017-02-09 13:50:38 .

Status:
Resolved
Priority:
Normal
Assignee:
Category:
Hardware support
Target version:
Start date:
2016-09-28
Due date:
% Done:

100%

Feature Branch:
bugfix/11853-mesa-12.0.3
Type of work:
Code
Blueprint:

Starter:
0
Affected tool:
Deliverable for:

Description

This is about the issue that was already discussed here: https://labs.riseup.net/code/issues/11303

It was closed there, someone wrote “this ticket has been closed so please open a new ticket for this issue” since the issue wasn’t directly about the feature that was finished. I have not found the new bug report about that issue, so I open it here.

Another small discussion about the issue you find here: https://www.reddit.com/r/tails/comments/4w303s/tails_25_refresh_rate_slow_as_shit/

The UI of Tails runs very slow on some AMD GPUs, I would guess it’s roughly 1 fps, so there is no hardware acceleration and the whole rendering is done in software. The reports seem to suggest that at least these GPUs are affected:

AMD Radeon HD 8850M
AMD Radeon HD 7770
AMD Radeon R9 290X
AMD Radeon R9 390X
AMD Radeon R9 M270X
AMD Radeon R9 390
AMD Radeon R9 290

R9 290X and R9 390X are the same GPUs, same for R9 390 and R9 290. The HD 8850M is the same chip like the M270X I think, so some specific AMD GPUs seem to be affected by this.

I am using a R9 390. I can confirm what the others already wrote, Tails 2.3 worked fine and smooth while with 2.4 everything started being unusable. I hoped 2.6 would fix this, but it had no effect on this issue.


Subtasks


Related issues

Related to Tails - Feature #11303: Ship mesa from jessie-backports Resolved 2016-04-02
Related to Tails - Bug #11853: ISO build from devel fails with mesa 12.0.3-1~bpo8+1 Resolved 2016-09-30
Related to Tails - Bug #12218: AMD graphics regression since Tails 2.10 Resolved 2017-02-09

History

#1 Updated by intrigeri 2016-09-30 01:14:19

#2 Updated by intrigeri 2016-09-30 01:28:08

  • Category set to Hardware support
  • Status changed from New to Confirmed
  • Assignee set to Whitry
  • QA Check set to Info Needed
  • Type of work changed from Graphics to Code

Can you please try adding radeon.modeset=0 to the startup options (https://tails.boum.org/doc/first_steps/startup_options/#boot_menu)? I doubt this will fix the bug, but it’s worth trying.

Also, can you please check if the affected chips are part of any of those families: Bonaire, Hawaii, Kaveri, Kabini, Mullins, Iceland, Tonga, Carrizo, Fiji, Stoney?
If they are, then thanks to the recent upload of xserver-xorg-video-amdgpu to jessie-backports (along with Mesa 12.0.3), we should be able to fix this problem in Tails 2.8, and I’m happy to work on this (Bug #11853 will force me to look into this area and change some things there anyway).

#3 Updated by intrigeri 2016-09-30 02:05:27

  • related to Bug #11853: ISO build from devel fails with mesa 12.0.3-1~bpo8+1 added

#4 Updated by intrigeri 2016-09-30 02:51:44

  • Status changed from Confirmed to In Progress
  • % Done changed from 0 to 10
  • Feature Branch set to bugfix/11853-mesa-12.0.3

#5 Updated by intrigeri 2016-09-30 04:37:25

  • Target version set to Tails_2.9.1

Please test the experimental ISO image available at http://nightly.tails.boum.org/build_Tails_ISO_bugfix-11853-mesa-12.0.3/lastSuccessful/archive/ and report back. Thanks in advance!

#6 Updated by Whitry 2016-09-30 18:24:10

Thanks! I have tested the ISO and the issue is fixed there, graphics are smooth on my R9 390.

From the GPU families you mentioned only Hawaii is affected. Hawaii is R9 290/290X. The rest of the affected GPUs are all different types.

#7 Updated by intrigeri 2016-10-02 14:38:07

  • Assignee changed from Whitry to anonym
  • % Done changed from 10 to 50
  • QA Check changed from Info Needed to Ready for QA

Thanks for testing!

#8 Updated by anonym 2016-10-05 09:20:44

  • Status changed from In Progress to Fix committed
  • Assignee deleted (anonym)
  • % Done changed from 50 to 100
  • QA Check changed from Ready for QA to Pass

Sadly I don’t have access to any AMD GPU, but I saw no regressions on a system with an Intel GPU, and a system with both Intel and NVIDIA GPUs. Merged!

#9 Updated by Whitry 2016-10-15 23:17:31

Thanks! I hope this question isn’t stupid, but if this is already fixed, why will people who own one of those GPUs have to wait until 2.8 is released to be able to use Tails again, so why can’t this fix be added to 2.7?

#10 Updated by BitingBird 2016-10-16 04:42:36

Whitry: 2.7 will be a minor release, 2.8 will be a major release. We don’t introduce new features in minor release, we mostly re-build with updated software from uptream.

#11 Updated by intrigeri 2016-10-16 15:37:15

> Whitry: 2.7 will be a minor release, 2.8 will be a major release. We don’t introduce new features in minor release, we mostly re-build with updated software from uptream.

Exactly. In particular, we generally avoid pushing changes that may break hardware support in minor releases, since they have no release candidate for people to test.

#12 Updated by anonym 2016-11-30 13:38:46

  • Target version changed from Tails_2.9.1 to Tails 2.10

While it’s been merged before 2.10, the fix will land in Tails 2.10 earlier, so…

#13 Updated by Baum 2016-12-20 02:16:35

Why is this not fixed in 4.9? This bug is making Tails unusable for a relatively huge percentage of all users and you just keep pushing the fix further away? This would deserve to get fixed in a hotfix immediately, how can you just wait so long and dont even communicate here why its not part of the current release?

This bug is in Tails since 2.4. Since 2.4 many AMD users cant use Tails any more and you treat this bug like its some minor thing!

#14 Updated by intrigeri 2016-12-20 09:39:30

> Why is this not fixed in 4.9? This bug is making Tails unusable for a relatively huge percentage of all users and you just keep pushing the fix further away? This would deserve to get fixed in a hotfix immediately, how can you just wait so long and dont even communicate here why its not part of the current release?

> This bug is in Tails since 2.4. Since 2.4 many AMD users cant use Tails any more and you treat this bug like its some minor thing!

The fix for this bug has a quite big risk for introducing regressions for basically everybody else, so we didn’t want to introduce it in a bugfix-only release, that has no release candidate, and thus won’t see much testing before being released.

#15 Updated by anonym 2017-01-24 20:42:50

  • Status changed from Fix committed to Resolved

#16 Updated by Wurd 2017-01-28 01:46:51

Unfortunately, this is not fixed in 4.10. It is still only doing software rendering on those AMD GPUs.

Support for these GPUs only got worse, because now multi monitor setups dont work any more. Out of my 3 monitors, only 2 work, the other one is black and does not show anything. And the 2 that work actually show the same image, so Tails does not recognize it as 2 different screens, it just mirrors it. If I disconnect the 2 monitors that work and only connect the one that was black before then that one works (but still only software rendering, so everything lags).
In 4.9 that still worked and I got 3 monitors with every monitor being an individual part of the desktop.

Why is GPU support only getting worse in Tails over time? In 4.3 everything worked great, with 4.4 GPU rendering stopped working and with 4.10 now only 1 monitor works :(

#17 Updated by intrigeri 2017-01-28 07:47:52

> Unfortunately, this is not fixed in 4.10. It is still only doing software rendering on those AMD GPUs.

Please report a bug about this, so that we get all the info we need (system logs, hardware details) to try and address it.

Note that at least one user reported (Bug #11850#note-6) that the changes this ticket is about did fix problems on a R9 390, so perhaps not all of those AMD graphics adapters have got worse. Also, in the future you may want to consider testing release candidates (in this case: Tails 2.10~rc1) so that such problems are identified before the actual, final release :)

#18 Updated by Wurd 2017-01-29 21:04:15

Am am the same user like Whitry, I just created a new account because I forgot my password (when I havent visited a site for 4 months, that usually happens…).

I did test that ISO 4 months ago, and that ISO back then fixed the issue, but it seems like the fix is not in 4.10, because 4.10 behaves same like 2.4 - 2.9. So something went wrong between having the fix in the ISO and having it in 4.10.

And yes, I should have tested the RC, but I thought there would be some QA that makes sure this is fixed when its marked as fixed, since it worked fine 4 months ago in that experimental ISO.

#19 Updated by Kaffka 2017-02-08 19:14:10

Please reopen, this is still present in Tails 2.10 with Radeon R9 390 (Fury).

dmesg:

[    1.935764] [drm] Initialized drm 1.1.0 20060810
[    1.939708] [drm] radeon kernel modesetting enabled.
[    1.951220] fb: switching to radeondrmfb from EFI VGA
[    1.951573] [drm] initializing kernel modesetting (HAWAII 0x1002:0x67B1 0x174B:0xE324 0x80).
[    1.951579] [drm] register mmio base: 0xDFE00000
[    1.951580] [drm] register mmio size: 262144
[    1.951582] [drm] doorbell mmio base: 0xD0000000
[    1.951582] [drm] doorbell mmio size: 8388608
[    1.951607] radeon 0000:01:00.0: Invalid PCI ROM header signature: expecting 0xaa55, got 0xffff
[    1.951705] radeon 0000:01:00.0: VRAM: 8192M 0x0000000000000000 - 0x00000001FFFFFFFF (8192M used)
[    1.951706] radeon 0000:01:00.0: GTT: 2048M 0x0000000200000000 - 0x000000027FFFFFFF
[    1.951706] [drm] Detected VRAM RAM=8192M, BAR=256M
[    1.951707] [drm] RAM width 512bits DDR
[    1.951775] [drm] radeon: 8192M of VRAM memory ready
[    1.951776] [drm] radeon: 2048M of GTT memory ready.
[    1.951783] [drm] Loading hawaii Microcode
[    1.951793] radeon 0000:01:00.0: firmware: direct-loading firmware radeon/hawaii_pfp.bin
[    1.951800] radeon 0000:01:00.0: firmware: direct-loading firmware radeon/hawaii_me.bin
[    1.951807] radeon 0000:01:00.0: firmware: direct-loading firmware radeon/hawaii_ce.bin
[    1.951815] radeon 0000:01:00.0: firmware: direct-loading firmware radeon/hawaii_mec.bin
[    1.951821] radeon 0000:01:00.0: firmware: direct-loading firmware radeon/hawaii_rlc.bin
[    1.951827] radeon 0000:01:00.0: firmware: direct-loading firmware radeon/hawaii_sdma.bin
[    1.951837] radeon 0000:01:00.0: firmware: direct-loading firmware radeon/hawaii_mc.bin
[    1.951842] radeon 0000:01:00.0: firmware: failed to load radeon/hawaii_k_smc.bin (-2)
[    1.951845] radeon 0000:01:00.0: Direct firmware load for radeon/hawaii_k_smc.bin failed with error -2
[    1.951866] radeon 0000:01:00.0: firmware: direct-loading firmware radeon/HAWAII_smc.bin
[    1.951897] [drm:cik_init [radeon]] *ERROR* Failed to load firmware!
[    1.951898] radeon 0000:01:00.0: Fatal error during GPU init
[    1.951900] [drm] radeon: finishing device.
[    1.959170] [drm] radeon: ttm finalized
[    1.959346] radeon: probe of 0000:01:00.0 failed with error -22

#20 Updated by Kaffka 2017-02-08 19:16:53

Full log attached.

#21 Updated by Kaffka 2017-02-08 19:35:58

Sorry if I’m spaming, adding info as I go. :)

Seems like hawaii_k_smc.bin is missing:

amnesia@amnesia:~$ ls -al /lib/firmware/radeon | grep hawaii_
-rw-r--r--  1 root root   8832 Oct  1 22:38 hawaii_ce.bin
-rw-r--r--  1 root root  32796 Oct  1 22:38 hawaii_mc.bin
-rw-r--r--  1 root root   8832 Oct  1 22:38 hawaii_me.bin
-rw-r--r--  1 root root  17024 Oct  1 22:38 hawaii_mec.bin
-rw-r--r--  1 root root   8832 Oct  1 22:38 hawaii_pfp.bin
-rw-r--r--  1 root root   8448 Oct  1 22:38 hawaii_rlc.bin
-rw-r--r--  1 root root   4456 Oct  1 22:38 hawaii_sdma1.bin
-rw-r--r--  1 root root   4456 Oct  1 22:38 hawaii_sdma.bin
-rw-r--r--  1 root root 130796 Oct  1 22:38 hawaii_smc.bin
-rw-r--r--  1 root root 232752 Oct  1 22:38 hawaii_uvd.bin
-rw-r--r--  1 root root 101072 Oct  1 22:38 hawaii_vce.bin

Might be related to:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=843061
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=838858

#22 Updated by intrigeri 2017-02-09 13:47:40

  • related to Bug #12218: AMD graphics regression since Tails 2.10 added

#23 Updated by intrigeri 2017-02-09 13:48:48

I’ll work on it on Bug #12218, because repurposing this ticket is confusing. Expect test ISO images later this week.

#24 Updated by intrigeri 2017-02-09 13:50:38

Also, note that if one single affected user had tested 2.10~rc1, we would have had a chance to avoid releasing with that regression :)