Sunday, October 24, 2021

Systemd messages after suspend in Debian Testing -fixed

Update 19/12/21 Fixed - see below

I've been seeing some Systemd messages after this laptop comes out of suspend - but they only appear for a fraction of a second. I tried filming the screen as the laptop came out of suspend but only managed to get a blurry still by freezing the video.


How to read the error messages? I found I could read Systemd messages in real time, suspend and wake up the laptop and see the messages in the output. 

The command is

# journalctl -f

And the error messages were

Oct 24 19:21:38 Toshiba-laptop kernel: debugfs: File 'radeon_ring_gfx' in directory '0' already present! 

Oct 24 19:21:38 Toshiba-laptop kernel: debugfs: File 'radeon_ring_cp1' in directory '0' already present! 

Oct 24 19:21:38 Toshiba-laptop kernel: debugfs: File 'radeon_ring_cp2' in directory '0' already present! 

Oct 24 19:21:38 Toshiba-laptop kernel: debugfs: File 'radeon_ring_dma1' in directory '0' already present! 

Oct 24 19:21:38 Toshiba-laptop kernel: debugfs: File 'radeon_ring_dma2' in directory '0' already present! 

Seems to be a kernel bug (Arch Linux Forums).

Update - fix found

It seems the AMD driver packages in Debian contain both amdgpu and radeon drivers; the radeon driver is used by default on my hardware, but kernel modules for both amdgpu and radeon are loaded, and both try to create the same directory. 

The solution was to use the amdgpu driver as documented at the Debian Wiki. The amdgpu driver supports modern GPUs. Mine is older, and radeon is used by default because it's more stable, but it's also possible to use the amdgpu driver experimentally. For some reason, although both modules are still loaded, the error messages do not appear when using the amdgpu driver.

[More information on amdgpu on older chips in this article:

The Current State Of Older AMD Graphics Hardware On Linux: What Driver To Use And What To Expect (Linux Reviews)]

The following command got me the name of the GPU card:

# lspci -nnk | grep -i vga -A3 

00:01.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Mullins [Radeon R2 Graphics] [1002:9853] 

Subsystem: Toshiba Corporation Mullins [Radeon R2 Graphics] [1179:f910] 

Kernel driver in use: amdgpu 

Kernel modules: radeon, amdgpu

(When I first ran the command, radeon was the driver in use.)

I found that Mullins belongs to the Sea Island family at the Gentoo Wiki.

To enable amdgpu on an older Sea Island card, I followed the advice at the Debian Wiki and edited etc/default/grub:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash radeon.cik_support=0 amdgpu.cik_support=1"

Update grub afterwards with 

# update-grub2.

For my GPU, the E1-6010, amdgpu apparently breaks hibernate to disk, but it does fix the Systemd messages as posters have noted at the Arch Linux Forum thread linked to in the original post. It also enables Vulkan, a replacement for OpenGL rendering with better performance.

Although I no longer get the original errors messages, I noticed a new one:

 [6.710082] kfd kfd: amdgpu: MULLINS  not supported in kfd

As far as I can work out, this relates to use of the GPU to assist with mathematical computations by some applications, which doesn't affect me, so I'm calling this one fixed.




No comments:

Post a Comment