Skip to contentSkip to conversation

Lower the severity of the radeon lockup messages.

DRM Dave Jones 3 participants 3 messages Oct 21, 2011 – Oct 22, 2011

Subsystems (2)
lore
Share & tools
lore

Dave Jones

author
#0 lore raw

abrt files a lot of bug reports when users get GPU lockups, but there's not really enough context to do anything useful with them. Given the lack of GPU context being dumped, this patch removes the stack trace, so that abrt ignores the messages.

drivers/gpu/drm/radeon/radeon_fence.c +1 -1
index 7fd4e3e..a488b50 100644
@@ -263,7 +263,7 @@ retry:
 		 */
 		if (seq == rdev->fence_drv.last_seq && radeon_gpu_is_lockup(rdev)) {
 			/* good news we believe it's a lockup */
-			WARN(1, "GPU lockup (waiting for 0x%08X last fence id 0x%08X)\n",
+			printk(KERN_WARNING "GPU lockup (waiting for 0x%08X last fence id 0x%08X)\n",
 			     fence->seq, seq);
 			/* FIXME: what should we do ? marking everyone
 			 * as signaled for now
#1 lore raw
Quoted 11 lines · Dave Jones

abrt files a lot of bug reports when users get GPU lockups, but there's not really enough context to do anything useful with them. Given the lack of GPU context being dumped, this patch removes the stack trace, so that abrt ignores the messages.

drivers/gpu/drm/radeon/radeon_fence.c +0 -0
index 7fd4e3e..a488b50 100644

drivers/gpu/drm/radeon/radeon_fence.c retry: · line 269

Quoted 8 lines
drivers/gpu/drm/radeon/radeon_fence.c +1 -1
@@ -263,7 +263,7 @@ retry:
  		 */
  		if (seq == rdev->fence_drv.last_seq&&  radeon_gpu_is_lockup(rdev)) {
  			/* good news we believe it's a lockup */
-			WARN(1, "GPU lockup (waiting for 0x%08X last fence id 0x%08X)\n",
+			printk(KERN_WARNING "GPU lockup (waiting for 0x%08X last fence id 0x%08X)\n",
  			     fence->seq, seq);
  			/* FIXME: what should we do ? marking everyone
  			 * as signaled for now

At the risk of sounding obvious, wouldn't it be better to enhance the driver to dump out more useful debugging info in this case rather than just suppressing the ABRT report?

#2 lore raw
Quoted 2 lines

At the risk of sounding obvious, wouldn't it be better to enhance the driver to dump out more useful debugging info in this case rather than just suppressing the ABRT report?

In theory yes, in practice that is non-trivial. The amount of data you need to keep track off is in the MBs, it can range from any previous GPU command stream sent to the GPU, to the contents of any of the vertex buffers etc.

the problem with GPU lockups is you don't notice them until after you've queued up a tonne more stuff since they are such deep pipelines.

Dave.