From: Greg Kroah-Hartman Date: Fri, 21 Jun 2013 21:26:07 +0000 (-0700) Subject: 3.4-stable patches X-Git-Tag: v3.0.84~13 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=87c7e6c5e86620dbcfac17f0f02f29c04cdc038e;p=thirdparty%2Fkernel%2Fstable-queue.git 3.4-stable patches added patches: drm-radeon-update-lockup-tracking-when-scheduling-in-empty-ring.patch --- diff --git a/queue-3.4/drm-radeon-update-lockup-tracking-when-scheduling-in-empty-ring.patch b/queue-3.4/drm-radeon-update-lockup-tracking-when-scheduling-in-empty-ring.patch new file mode 100644 index 00000000000..52cab5dcce4 --- /dev/null +++ b/queue-3.4/drm-radeon-update-lockup-tracking-when-scheduling-in-empty-ring.patch @@ -0,0 +1,39 @@ +From 8444d5c69549aa0f0b574cc608742d4669e1cc01 Mon Sep 17 00:00:00 2001 +From: Jerome Glisse +Date: Wed, 19 Jun 2013 10:02:28 -0400 +Subject: drm/radeon: update lockup tracking when scheduling in empty ring + +From: Jerome Glisse + +commit 8444d5c69549aa0f0b574cc608742d4669e1cc01 upstream. + +There might be issue with lockup detection when scheduling on an +empty ring that have been sitting idle for a while. Thus update +the lockup tracking data when scheduling new work in an empty ring. + +Signed-off-by: Jerome Glisse +Tested-by: Andy Lutomirski +Reviewed-by: Christian König +Signed-off-by: Alex Deucher +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/gpu/drm/radeon/radeon_ring.c | 7 +++++++ + 1 file changed, 7 insertions(+) + +--- a/drivers/gpu/drm/radeon/radeon_ring.c ++++ b/drivers/gpu/drm/radeon/radeon_ring.c +@@ -316,6 +316,13 @@ int radeon_ring_alloc(struct radeon_devi + return -ENOMEM; + /* Align requested size with padding so unlock_commit can + * pad safely */ ++ radeon_ring_free_size(rdev, ring); ++ if (ring->ring_free_dw == (ring->ring_size / 4)) { ++ /* This is an empty ring update lockup info to avoid ++ * false positive. ++ */ ++ radeon_ring_lockup_update(ring); ++ } + ndw = (ndw + ring->align_mask) & ~ring->align_mask; + while (ndw > (ring->ring_free_dw - 1)) { + radeon_ring_free_size(rdev, ring); diff --git a/queue-3.4/series b/queue-3.4/series index 3c3b1360090..e0a7db4269d 100644 --- a/queue-3.4/series +++ b/queue-3.4/series @@ -3,3 +3,4 @@ alsa-usb-audio-work-around-android-accessory-firmware-bug.patch clk-remove-notifier-from-list-before-freeing-it.patch tilepro-work-around-module-link-error-with-gcc-4.7.patch kvm-x86-remove-vcpu-s-cpl-check-in-host-invoked-xcr-set.patch +drm-radeon-update-lockup-tracking-when-scheduling-in-empty-ring.patch