NetBSD Problem Report #58710
From www@netbsd.org Mon Sep 30 02:14:34 2024
Return-Path: <www@netbsd.org>
Received: from mail.netbsd.org (mail.netbsd.org [199.233.217.200])
(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
key-exchange X25519 server-signature RSA-PSS (2048 bits)
client-signature RSA-PSS (2048 bits))
(Client CN "mail.NetBSD.org", Issuer "mail.NetBSD.org CA" (not verified))
by mollari.NetBSD.org (Postfix) with ESMTPS id D7CB71A923B
for <gnats-bugs@gnats.NetBSD.org>; Mon, 30 Sep 2024 02:14:34 +0000 (UTC)
Message-Id: <20240930021433.4880F1A923D@mollari.NetBSD.org>
Date: Mon, 30 Sep 2024 02:14:33 +0000 (UTC)
From: pfr@sdf.org
Reply-To: pfr@sdf.org
To: gnats-bugs@NetBSD.org
Subject: amdgpu kernel bug -- modesetting driver GL Rendering failure
X-Send-Pr-Version: www-1.0
>Number: 58710
>Category: kern
>Synopsis: amdgpu kernel bug -- modesetting driver GL Rendering failure
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: kern-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Mon Sep 30 02:15:00 +0000 2024
>Last-Modified: Tue Oct 01 18:55:02 +0000 2024
>Originator: David
>Release: NetBSD 10.0 amd64
>Organization:
>Environment:
NetBSD desktop.local 10.0 NetBSD 10.0 (MYKERNEL) #0: Sat Sep 7 22:38:21 AEST 2024 dave@desktop.local:/usr/src/sys/arch/amd64/compile/MYKERNEL amd64
>Description:
I've rebuilt the kernel to get the system to support amdgpu. The only modifications made were uncommenting the 2 amdgpu lines and commenting out the 2 radeon lines. Additionally I uncommended the DEBUG, DIAGNOSTIC, and LOCKDEBUG lines.
My GPU is: AMD Radeon RX 570 Series
Any GL rendered apps report errors when launching:
Firefox:
```
~ $ firefox
Crash Annotation GraphicsCriticalError: |[0][GFX1-]: glxtest: DRM device has no render node (t=0.462674) [GFX1-]: glxtest: DRM device has no render node
Crash Annotation GraphicsCriticalError: |[0][GFX1-]: glxtest: DRM device has no render node (t=0.462674) |[1][GFX1-]: glxtest: Cannot find DRM device (t=0.462784) [GFX1-]: glxtest: Cannot find DRM device
ATTENTION: default value of option mesa_glthread overridden by environment.
ATTENTION: default value of option mesa_glthread overridden by environment.
amdgpu: os_same_file_description couldn't determine if two DRM fds reference the same file description.
If they do, bad things may happen!
ac_rtld error: !data || data->d_size != shdr->sh_size
LLVM failed to upload shader
ac_rtld error: !data || data->d_size != shdr->sh_size
LLVM failed to upload shader
ac_rtld error: !data || data->d_size != shdr->sh_size
LLVM failed to upload shader
EE ../src/gallium/drivers/radeonsi/si_state_shaders.c:2226 si_build_shader_variant - Failed to build shader variant (type=0)
ac_rtld error: !data || data->d_size != shdr->sh_size
LLVM failed to upload shader
EE ../src/gallium/drivers/radeonsi/si_state_shaders.c:2226 si_build_shader_variant - Failed to build shader variant (type=0)
ac_rtld error: !data || data->d_size != shdr->sh_size
LLVM failed to upload shader
EE ../src/gallium/drivers/radeonsi/si_state_shaders.c:2226 si_build_shader_variant - Failed to build shader variant (type=0)
ac_rtld error: !data || data->d_size != shdr->sh_size
LLVM failed to upload shader
EE ../src/gallium/drivers/radeonsi/si_state_shaders.c:2226 si_build_shader_variant - Failed to build shader variant (type=0)
ac_rtld error: !data || data->d_size != shdr->sh_size
LLVM failed to upload shader
EE ../src/gallium/drivers/radeonsi/si_state_shaders.c:2226 si_build_shader_variant - Failed to build shader variant (type=0)
ac_rtld error: !data || data->d_size != shdr->sh_size
LLVM failed to upload shader
EE ../src/gallium/drivers/radeonsi/si_state_shaders.c:2226 si_build_shader_variant - Failed to build shader variant (type=0)
ac_rtld error: !data || data->d_size != shdr->sh_size
LLVM failed to upload shader
EE ../src/gallium/drivers/radeonsi/si_state_shaders.c:2226 si_build_shader_variant - Failed to build shader variant (type=0)
ac_rtld error: !data || data->d_size != shdr->sh_size
LLVM failed to upload shader
EE ../src/gallium/drivers/radeonsi/si_state_shaders.c:2226 si_build_shader_variant - Failed to build shader variant (type=0)
ac_rtld error: !data || data->d_size != shdr->sh_size
LLVM failed to upload shader
EE ../src/gallium/drivers/radeonsi/si_state_shaders.c:2226 si_build_shader_variant - Failed to build shader variant (type=0)
ac_rtld error: !data || data->d_size != shdr->sh_size
LLVM failed to upload shader
EE ../src/gallium/drivers/radeonsi/si_state_shaders.c:2226 si_build_shader_variant - Failed to build shader variant (type=0)
ac_rtld error: !data || data->d_size != shdr->sh_size
LLVM failed to upload shader
EE ../src/gallium/drivers/radeonsi/si_state_shaders.c:2226 si_build_shader_variant - Failed to build shader variant (type=0)
ac_rtld error: !data || data->d_size != shdr->sh_size
LLVM failed to upload shader
EE ../src/gallium/drivers/radeonsi/si_state_shaders.c:2226 si_build_shader_variant - Failed to build shader variant (type=0)
ac_rtld error: !data || data->d_size != shdr->sh_size
LLVM failed to upload shader
```
```
~ $ firefox --MOZ_LOG=Dmabuf:5
Crash Annotation GraphicsCriticalError: |[0][GFX1-]: glxtest: DRM device has no render node (t=0.520564) [GFX1-]: glxtest: DRM device has no render node
Crash Annotation GraphicsCriticalError: |[0][GFX1-]: glxtest: DRM device has no render node (t=0.520564) |[1][GFX1-]: glxtest: Cannot find DRM device (t=0.520684) [GFX1-]: glxtest: Cannot find DRM device
[Parent 13098: Main Thread]: D/Dmabuf DMABufDevice::Configure()
[Parent 13098: Main Thread]: D/Dmabuf Loading DMABuf system library libgbm.so.1 ...
[Parent 13098: Main Thread]: D/Dmabuf Failed to load libdrm.so.2, dmabuf isn't available.
[Parent 13098: Main Thread]: D/Dmabuf GbmLib is not available!
ATTENTION: default value of option mesa_glthread overridden by environment.
ATTENTION: default value of option mesa_glthread overridden by environment.
amdgpu: os_same_file_description couldn't determine if two DRM fds reference the same file description.
If they do, bad things may happen!
```
GLXINFO:
```
~ $ glxinfo -B
name of display: :0
display: :0 screen: 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
Vendor: X.Org (0x1002)
Device: AMD Radeon RX 570 Series (POLARIS10, DRM 3.36.0, 10.0, LLVM 13.0.0) (0x67df)
Version: 19.1.17
Accelerated: yes
Video memory: 4096MB
Unified memory: no
Preferred profile: core (0x1)
Max core profile version: 4.5
Max compat profile version: 4.5
Max GLES1 profile version: 1.1
Max GLES[23] profile version: 3.2
Memory info (GL_ATI_meminfo):
VBO free memory - total: 3917 MB, largest block: 3917 MB
VBO free aux. memory - total: 4068 MB, largest block: 4068 MB
Texture free memory - total: 3917 MB, largest block: 3917 MB
Texture free aux. memory - total: 4068 MB, largest block: 4068 MB
Renderbuffer free memory - total: 3917 MB, largest block: 3917 MB
Renderbuffer free aux. memory - total: 4068 MB, largest block: 4068 MB
Memory info (GL_NVX_gpu_memory_info):
Dedicated video memory: 4096 MB
Total available memory: 8192 MB
Currently available dedicated video memory: 3917 MB
OpenGL vendor string: X.Org
OpenGL renderer string: AMD Radeon RX 570 Series (POLARIS10, DRM 3.36.0, 10.0, LLVM 13.0.0)
OpenGL core profile version string: 4.5 (Core Profile) Mesa 19.1.17
OpenGL core profile shading language version string: 4.50
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL version string: 4.5 (Compatibility Profile) Mesa 19.1.17
OpenGL shading language version string: 4.50
OpenGL context flags: (none)
OpenGL profile mask: compatibility profile
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 19.1.17
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
```
/etc/xorg.conf :
```
Section "Device"
Identifier "Card0"
Driver "modesetting"
EndSection
```
>How-To-Repeat:
1. Have an AMD Radeon RX 570 Series GPU.
2. Recompile kernel with both amdgpu lines uncommented and both radeon lines commented out.
3. Set modesetting drive in xorg.conf
4. Have Firefox installed
5. Start graphical xorg session using startx
6. Open Firefox, observe. >> Screenshot: https://0x0.st/XwYi.png
>Fix:
>Audit-Trail:
From: David <pfr@sdf.org>
To: gnats-bugs@netbsd.org
Cc:
Subject: Re: kern/58710: amdgpu kernel bug -- modesetting driver GL Rendering
failure
Date: Mon, 30 Sep 2024 12:23:38 +1000
Silly me forgot to include dmesg and Xorg.0.log (how rude).
Here they are:
dmesg: https://0x0.st/Xgec.txt
Xorg.0.log: https://0x0.st/Xgea.txt
On 30/9/24 12:15, gnats-admin@netbsd.org wrote:
> Thank you very much for your problem report.
> It has the internal identification `kern/58710'.
> The individual assigned to look at your
> report is: kern-bug-people.
>
>> Category: kern
>> Responsible: kern-bug-people
>> Synopsis: amdgpu kernel bug -- modesetting driver GL Rendering failure
>> Arrival-Date: Mon Sep 30 02:15:00 +0000 2024
From: RVP <rvp@SDF.ORG>
To: gnats-bugs@netbsd.org
Cc:
Subject: Re: kern/58710: amdgpu kernel bug -- modesetting driver GL Rendering
failure
Date: Mon, 30 Sep 2024 07:30:41 +0000 (UTC)
On Mon, 30 Sep 2024, pfr@sdf.org wrote:
> ~ $ firefox --MOZ_LOG=Dmabuf:5
> Crash Annotation GraphicsCriticalError: |[0][GFX1-]: glxtest: DRM device has no render node (t=0.520564) [GFX1-]: glxtest: DRM device has no render node
> Crash Annotation GraphicsCriticalError: |[0][GFX1-]: glxtest: DRM device has no render node (t=0.520564) |[1][GFX1-]: glxtest: Cannot find DRM device (t=0.520684) [GFX1-]: glxtest: Cannot find DRM device
> [Parent 13098: Main Thread]: D/Dmabuf DMABufDevice::Configure()
> [Parent 13098: Main Thread]: D/Dmabuf Loading DMABuf system library libgbm.so.1 ...
> [Parent 13098: Main Thread]: D/Dmabuf Failed to load libdrm.so.2, dmabuf isn't available.
> [Parent 13098: Main Thread]: D/Dmabuf GbmLib is not available!
>
Hmm. NetBSD 10.x comes with libdrm.so.3, so what's (and why) is something
requiring libdrm.so.2?
Can you do a clean re-install of everything (OS and your binary packages)?
-RVP
From: matthew green <mrg@eterna23.net>
To: gnats-bugs@netbsd.org
Cc: kern-bug-people@netbsd.org, gnats-admin@netbsd.org,
netbsd-bugs@netbsd.org
Subject: re: kern/58710: amdgpu kernel bug -- modesetting driver GL Rendering failure
Date: Tue, 01 Oct 2024 06:08:54 +1000
is there a chance you can try -current on this system? for me it
was working mostly good with an RX 550, but i don't recall trying
netbsd-10 branch recently. i'll try to find time to do that, but
i can't promise anything for a week or more.
> Crash Annotation GraphicsCriticalError: |[0][GFX1-]: glxtest: DRM device=
has no render node (t=3D0.462674) [GFX1-]: glxtest: DRM device has no ren=
der node
i wonder if you, like me on some systems, are missing the render
nodes in /dev/dri that are created i modern systems, but not there
for older ones that have been upgraded. eg, i just created this
on one system it was missing on:
the-blessing /dev# l dri
total 0
crw-rw---- 1 root wheel 180, 0 Jul 24 20:47 card0
the-blessing /dev# sh MAKEDEV drm0
the-blessing /dev# l dri
total 0
crw-rw---- 1 root wheel 180, 0 Jul 24 20:47 card0
crw-rw---- 1 root wheel 180, 128 Sep 30 13:05 renderD128
i don't *think* this is relevant, so if it doesn't help are you
capable of patching Mesa to expand the errors and determine where
exactly the shader creation is failing? if so, please add some
diagnostic to si_create_shader_variant() to track down which of
the various paths that return false was taken?
thanks.
.mrg.
From: matthew green <mrg@eterna23.net>
To: gnats-bugs@netbsd.org
Cc: kern-bug-people@netbsd.org, gnats-admin@netbsd.org,
netbsd-bugs@netbsd.org, pfr@sdf.org
Subject: re: kern/58710: amdgpu kernel bug -- modesetting driver GL Rendering failure
Date: Wed, 02 Oct 2024 04:51:05 +1000
> > [Parent 13098: Main Thread]: D/Dmabuf Loading DMABuf system library l=
ibgbm.so.1 ...
> > [Parent 13098: Main Thread]: D/Dmabuf Failed to load libdrm.so.2, dma=
buf isn't available.
> =
> Hmm. NetBSD 10.x comes with libdrm.so.3, so what's (and why) is somethi=
ng
> requiring libdrm.so.2?
> =
> Can you do a clean re-install of everything (OS and your binary package=
s)?
this seems like a firefox bug? it comes from this source
i have handy from a few months ago:
firefox-127.0.2/toolkit/xre/glxtest/glxtest.cpp:# define LIBDRM_FILENAME =
"libdrm.so.2"
.mrg.
From: matthew green <mrg@eterna23.net>
To: kern-bug-people@netbsd.org, gnats-admin@netbsd.org,
netbsd-bugs@netbsd.org, pfr@sdf.org, gnats-bugs@netbsd.org
Cc:
Subject: re: kern/58710: amdgpu kernel bug -- modesetting driver GL Rendering failure
Date: Wed, 02 Oct 2024 04:53:16 +1000
> firefox-127.0.2/toolkit/xre/glxtest/glxtest.cpp:# define LIBDRM_FILENAM=
E "libdrm.so.2"
actually, there are a couple more:
firefox-127.0.2/widget/gtk/DMABufLibWrapper.cpp:#define DRMLIB_NAME "libdr=
m.so.2"
firefox-127.0.2/third_party/drm/libdrm/mozdrm.cpp: drmLib =3D PR_LoadLi=
brary("libdrm.so.2");
since the above one is a test program.
.mrg.
(Contact us)
$NetBSD: query-full-pr,v 1.49 2026/05/14 01:52:41 riastradh Exp $
$NetBSD: gnats_config.sh,v 1.10 2026/05/13 22:00:09 riastradh Exp $
Copyright © 1994-2026
The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.