Module Name:    src
Committed By:   riastradh
Date:           Sat Apr  4 15:46:53 UTC 2015

Modified Files:
        src/sys/external/bsd/drm2/include/drm: drm_wait_netbsd.h

Log Message:
In DRM_SPIN_WAIT_ON, don't stop after waiting only one tick.

Continue the loop to recheck the condition and count the whole
duration.


To generate a diff of this commit:
cvs rdiff -u -r1.11 -r1.12 \
    src/sys/external/bsd/drm2/include/drm/drm_wait_netbsd.h

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/include/drm/drm_wait_netbsd.h
diff -u src/sys/external/bsd/drm2/include/drm/drm_wait_netbsd.h:1.11 src/sys/external/bsd/drm2/include/drm/drm_wait_netbsd.h:1.12
--- src/sys/external/bsd/drm2/include/drm/drm_wait_netbsd.h:1.11	Sat Feb 28 21:30:22 2015
+++ src/sys/external/bsd/drm2/include/drm/drm_wait_netbsd.h	Sat Apr  4 15:46:53 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: drm_wait_netbsd.h,v 1.11 2015/02/28 21:30:22 riastradh Exp $	*/
+/*	$NetBSD: drm_wait_netbsd.h,v 1.12 2015/04/04 15:46:53 riastradh Exp $	*/
 
 /*-
  * Copyright (c) 2013 The NetBSD Foundation, Inc.
@@ -147,7 +147,8 @@ DRM_SPIN_WAKEUP_ALL(drm_waitqueue_t *q, 
 		(RET) = -cv_timedwait_sig((Q), &(INTERLOCK)->sl_lock, 1);     \
 		if (RET) {						      \
 			if ((RET) == -EWOULDBLOCK)			      \
-				(RET) = (CONDITION) ? 0 : -EBUSY;	      \
+				/* Waited only one tick.  */		      \
+				continue;				      \
 			break;						      \
 		}							      \
 	}								      \

Reply via email to