svn commit: r312038 - stable/10/contrib/netbsd-tests/lib/libpthread

Ngie Cooper ngie at FreeBSD.org
Fri Jan 13 08:46:50 UTC 2017


Author: ngie
Date: Fri Jan 13 08:46:49 2017
New Revision: 312038
URL: https://svnweb.freebsd.org/changeset/base/312038

Log:
  MFC r311265,r311274:
  
  r311265:
  
  fpu: ensure calls to pthread_create succeed and test sched_yield to make
  sure it returns 0
  
  sched_yield tests for values returning 0 of type int and sched_yield is
  of type long, so the test is a mismatch
  
  CID:		1254953, 1254954, 1254965, 1254966
  
  r311274:
  
  run: ensure pthread_condattr_{init,setclock} is successful
  
  CID:		1268631, 1268633

Modified:
  stable/10/contrib/netbsd-tests/lib/libpthread/t_condwait.c
  stable/10/contrib/netbsd-tests/lib/libpthread/t_fpu.c
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/contrib/netbsd-tests/lib/libpthread/t_condwait.c
==============================================================================
--- stable/10/contrib/netbsd-tests/lib/libpthread/t_condwait.c	Fri Jan 13 08:46:46 2017	(r312037)
+++ stable/10/contrib/netbsd-tests/lib/libpthread/t_condwait.c	Fri Jan 13 08:46:49 2017	(r312038)
@@ -42,6 +42,8 @@ __RCSID("$NetBSD: t_condwait.c,v 1.4 201
 
 #ifdef __FreeBSD__
 #include <sys/time.h>
+
+#include "h_common.h"
 #endif
 
 #define WAITTIME 2	/* Timeout wait secound */
@@ -60,8 +62,13 @@ run(void *param)
 
 
 	clck = *(clockid_t *)param;
+#ifdef	__FreeBSD__
+	PTHREAD_REQUIRE(pthread_condattr_init(&attr));
+	PTHREAD_REQUIRE(pthread_condattr_setclock(&attr, clck));
+#else
 	pthread_condattr_init(&attr);
 	pthread_condattr_setclock(&attr, clck); /* MONOTONIC or MONOTONIC */
+#endif
 	pthread_cond_init(&cond, &attr);
 
 	ATF_REQUIRE_EQ((ret = pthread_mutex_lock(&m)), 0);

Modified: stable/10/contrib/netbsd-tests/lib/libpthread/t_fpu.c
==============================================================================
--- stable/10/contrib/netbsd-tests/lib/libpthread/t_fpu.c	Fri Jan 13 08:46:46 2017	(r312037)
+++ stable/10/contrib/netbsd-tests/lib/libpthread/t_fpu.c	Fri Jan 13 08:46:49 2017	(r312038)
@@ -58,6 +58,11 @@ __RCSID("$NetBSD: t_fpu.c,v 1.2 2013/01/
 
 #include <atf-c.h>
 
+#ifdef	__FreeBSD__
+#include <errno.h>
+#include <string.h>
+#endif
+
 #include "h_common.h"
 
 #define N_RECURSE 10
@@ -77,14 +82,24 @@ stir(void *p)
 
 	for (;;) {
 		x = sin ((y = cos (x + y + .4)) - (z = cos (x + z + .6)));
+#ifdef	__FreeBSD__
+		ATF_REQUIRE_MSG(sched_yield() == 0,
+		    "sched_yield failed: %s", strerror(errno));
+#else
 		PTHREAD_REQUIRE(sched_yield());
+#endif
 	}
 }
 
 static double
 mul3(double x, double y, double z)
 {
+#ifdef	__FreeBSD__
+	ATF_REQUIRE_MSG(sched_yield() == 0,
+	    "sched_yield failed: %s", strerror(errno));
+#else
 	PTHREAD_REQUIRE(sched_yield());
+#endif
 
 	return x * y * z;
 }
@@ -114,7 +129,11 @@ bar(void *p)
 static void
 recurse(void) {
 	pthread_t s2;
+#ifdef	__FreeBSD__
+	PTHREAD_REQUIRE(pthread_create(&s2, 0, bar, 0));
+#else
 	pthread_create(&s2, 0, bar, 0);
+#endif
 	sleep(20); /* XXX must be long enough for our slowest machine */
 }
 
@@ -134,7 +153,11 @@ ATF_TC_BODY(fpu, tc)
 
 	PTHREAD_REQUIRE(pthread_mutex_init(&recursion_depth_lock, 0));
 
+#ifdef	__FreeBSD__
+	PTHREAD_REQUIRE(pthread_create(&s5, 0, stir, stirseed));
+#else
 	pthread_create(&s5, 0, stir, stirseed);
+#endif
 	recurse();
 
 	atf_tc_fail("exiting from main");


More information about the svn-src-all mailing list