Bug 79051

Summary: Panic with radeon hd 5750, bisected
Product: Drivers Reporter: Jonathan Howard (jonathan)
Component: Video(DRI - non Intel)Assignee: drivers_video-dri
Status: RESOLVED PATCH_ALREADY_AVAILABLE    
Severity: normal CC: alexdeucher, edt
Priority: P1    
Hardware: x86-64   
OS: Linux   
Kernel Version: 3.14.6 - 3.16-rc2 Subsystem:
Regression: No Bisected commit-id:

Description Jonathan Howard 2014-06-27 12:52:18 UTC
Happens usually within first minute of starting weston (drm on archlinux.) just opening windows and moving mouse. (no panic within X.)

Bisected to
https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/commit/?h=linux-3.14.y&id=19aef29eea6e5b42e4097c2ccdd80e944e9f9f6f

Still same with 3.16-rc2.

Panic only dumped to screen so don't have exact copy.
RIP in drm_vblank_put
radeon_crt_handle_flip
evergreen_irq_process
notice_schd_clock
radeon_irq_handler_kms
handle_irq_events_percpu
...

Removing the one line stops the panic so does this;

diff --git a/drivers/gpu/drm/radeon/evergreen.c b/drivers/gpu/drm/radeon/evergre
index 971d933..e31d936 100644
--- a/drivers/gpu/drm/radeon/evergreen.c
+++ b/drivers/gpu/drm/radeon/evergreen.c
@@ -4967,7 +4967,8 @@ restart_ih:
                case 16: /* D5 page flip */
                case 18: /* D6 page flip */
                        DRM_DEBUG("IH: D%d flip\n", ((src_id - 8) >> 1) + 1);
-                       radeon_crtc_handle_flip(rdev, (src_id - 8) >> 1);
+                       if (atomic_read(&rdev->irq.pflip[(src_id - 8) >> 1]))
+                               radeon_crtc_handle_flip(rdev, (src_id - 8) >> 1)
                        break;
                case 42: /* HPD hotplug */
                        switch (src_data) {

Only guess work on my part. Needs someone with knowledge of code determine real fix.
Comment 1 Alex Deucher 2014-06-27 21:06:36 UTC
See this patch set and discussion:
http://lists.freedesktop.org/archives/dri-devel/2014-June/062411.html
Comment 2 Ed Tomlinson 2014-06-28 14:02:22 UTC
I am seeing a similar panic on a R7 260X.

See: https://plus.google.com/u/0/photos/108244876431105742323/albums/6029631260384977873/6029631269719723986?pid=6029631269719723986&oid=108244876431105742323

I cannot reproduce this on demand.  I am currently trying patch #2 and will report if I see impossible msc times.
Comment 3 Jonathan Howard 2014-07-11 16:32:15 UTC
3.16-rc4 3.15.5 both working. Expect (unchecked) discussion (above) patch is applied.