Module Name:    src
Committed By:   riastradh
Date:           Wed Aug  6 22:12:51 UTC 2014

Modified Files:
        src/sys/external/bsd/drm2/dist/drm/radeon: radeon_fence.c

Log Message:
radeon_fence_signaled needs to take the fence lock.


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 \
    src/sys/external/bsd/drm2/dist/drm/radeon/radeon_fence.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/external/bsd/drm2/dist/drm/radeon/radeon_fence.c
diff -u src/sys/external/bsd/drm2/dist/drm/radeon/radeon_fence.c:1.4 src/sys/external/bsd/drm2/dist/drm/radeon/radeon_fence.c:1.5
--- src/sys/external/bsd/drm2/dist/drm/radeon/radeon_fence.c:1.4	Wed Aug  6 12:47:13 2014
+++ src/sys/external/bsd/drm2/dist/drm/radeon/radeon_fence.c	Wed Aug  6 22:12:51 2014
@@ -265,13 +265,17 @@ bool radeon_fence_signaled(struct radeon
 	if (!fence) {
 		return true;
 	}
+	spin_lock(&fence->rdev->fence_lock);
 	if (fence->seq == RADEON_FENCE_SIGNALED_SEQ) {
+		spin_unlock(&fence->rdev->fence_lock);
 		return true;
 	}
 	if (radeon_fence_seq_signaled(fence->rdev, fence->seq, fence->ring)) {
 		fence->seq = RADEON_FENCE_SIGNALED_SEQ;
+		spin_unlock(&fence->rdev->fence_lock);
 		return true;
 	}
+	spin_unlock(&fence->rdev->fence_lock);
 	return false;
 }
 

Reply via email to