https://bugs.freedesktop.org/show_bug.cgi?id=101575
Bug ID: 101575 Summary: Lockup for executing trivial-tess-gs_no-gs-inputs.shader_test Product: Mesa Version: git Hardware: x86-64 (AMD64) OS: Linux (All) Status: NEW Severity: normal Priority: medium Component: Drivers/Gallium/r600 Assignee: dri-devel@lists.freedesktop.org Reporter: Hi-Angel@yandex.ru QA Contact: dri-devel@lists.freedesktop.org
Created attachment 132214 --> https://bugs.freedesktop.org/attachment.cgi?id=132214&action=edit Vertex, geometric, pixel shaders dump
This test always fails:
$ bin/shader_runner piglit/tests/spec/arb_tessellation_shader/execution/trivial-tess-gs_no-gs-inputs.shader_test -auto -fbo Probe color at (0,0) Expected: 0 255 0 0 Observed: 0 0 0 0 Test failure on line 60 PIGLIT: {"result": "fail" }
but, in addition, often screen goes black, and kernel spews a message about lockup:
[ 4093.695956] radeon 0000:01:00.0: ring 3 stalled for more than 10053msec [ 4093.695966] radeon 0000:01:00.0: GPU lockup (current fence id 0x00000000000002be last fence id 0x00000000000002bf on ring 3) [ 4093.696032] radeon 0000:01:00.0: failed to get a new IB (-35) [ 4093.696079] [drm:radeon_cs_ioctl [radeon]] *ERROR* Failed to get ib ! [ 4093.703389] radeon 0000:01:00.0: Saved 1154 dwords of commands on ring 0. [ 4093.703406] radeon 0000:01:00.0: GPU softreset: 0x0000001D [ 4093.703410] radeon 0000:01:00.0: GRBM_STATUS = 0xA0631CA0 [ 4093.703413] radeon 0000:01:00.0: GRBM_STATUS_SE0 = 0x18000003 [ 4093.703416] radeon 0000:01:00.0: GRBM_STATUS_SE1 = 0x00000007 [ 4093.703418] radeon 0000:01:00.0: SRBM_STATUS = 0x200000C0 [ 4093.703421] radeon 0000:01:00.0: SRBM_STATUS2 = 0x00000000 [ 4093.703424] radeon 0000:01:00.0: R_008674_CP_STALLED_STAT1 = 0x01000000 [ 4093.703427] radeon 0000:01:00.0: R_008678_CP_STALLED_STAT2 = 0x00011000 [ 4093.703430] radeon 0000:01:00.0: R_00867C_CP_BUSY_STAT = 0x00068402 [ 4093.703433] radeon 0000:01:00.0: R_008680_CP_STAT = 0x80870243 [ 4093.703436] radeon 0000:01:00.0: R_00D034_DMA_STATUS_REG = 0x44483106 [ 4093.708782] radeon 0000:01:00.0: GRBM_SOFT_RESET=0x00007F6B [ 4093.708836] radeon 0000:01:00.0: SRBM_SOFT_RESET=0x00100100 [ 4093.710004] radeon 0000:01:00.0: GRBM_STATUS = 0x00003828 [ 4093.710006] radeon 0000:01:00.0: GRBM_STATUS_SE0 = 0x00000007 [ 4093.710008] radeon 0000:01:00.0: GRBM_STATUS_SE1 = 0x00000007 [ 4093.710010] radeon 0000:01:00.0: SRBM_STATUS = 0x200000C0 [ 4093.710012] radeon 0000:01:00.0: SRBM_STATUS2 = 0x00000000 [ 4093.710014] radeon 0000:01:00.0: R_008674_CP_STALLED_STAT1 = 0x00000000 [ 4093.710015] radeon 0000:01:00.0: R_008678_CP_STALLED_STAT2 = 0x00000000 [ 4093.710017] radeon 0000:01:00.0: R_00867C_CP_BUSY_STAT = 0x00000000 [ 4093.710019] radeon 0000:01:00.0: R_008680_CP_STAT = 0x00000000 [ 4093.710021] radeon 0000:01:00.0: R_00D034_DMA_STATUS_REG = 0x44C83D57 [ 4093.710039] radeon 0000:01:00.0: GPU reset succeeded, trying to resume [ 4093.737953] [drm] PCIE GART of 1024M enabled (table at 0x000000000014C000). [ 4093.738076] radeon 0000:01:00.0: WB enabled [ 4093.738081] radeon 0000:01:00.0: fence driver on ring 0 use gpu addr 0x0000000040000c00 and cpu addr 0xffff8801b0eb0c00 [ 4093.738084] radeon 0000:01:00.0: fence driver on ring 3 use gpu addr 0x0000000040000c0c and cpu addr 0xffff8801b0eb0c0c [ 4093.738460] radeon 0000:01:00.0: fence driver on ring 5 use gpu addr 0x000000000005c418 and cpu addr 0xffffc9000181c418 [ 4093.755220] [drm] ring test on 0 succeeded in 1 usecs [ 4093.755229] [drm] ring test on 3 succeeded in 3 usecs [ 4093.932873] [drm] ring test on 5 succeeded in 1 usecs [ 4093.932878] [drm] UVD initialized successfully. [ 4093.951552] [drm] ib test on ring 0 succeeded in 0 usecs [ 4093.951589] [drm] ib test on ring 3 succeeded in 0 usecs [ 4095.109237] [drm] ib test on ring 5 succeeded
≈½ of lockups are leaving screen black, and require reboot.
Attaching vs,gs,ps assembly, and R600_TRACE results from 2 different lockups. The 2 traces are identical except that 1-st one locks up at the start, and the other at the end.
I've tried fixing it myself, but I have no slightest idea what to look at.