summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tools/regression/tls/ttls4/ttls4.c18
1 files changed, 8 insertions, 10 deletions
diff --git a/tools/regression/tls/ttls4/ttls4.c b/tools/regression/tls/ttls4/ttls4.c
index 9a1d43b..d55e51b 100644
--- a/tools/regression/tls/ttls4/ttls4.c
+++ b/tools/regression/tls/ttls4/ttls4.c
@@ -9,21 +9,17 @@
#include <stdio.h>
#include <pthread.h>
+#include <unistd.h>
int __thread n;
void *f1(void *arg)
{
- n = 1;
- return (0);
-}
-
-void *f2(void *arg)
-{
if (n != 0) {
printf("bug, n == %d \n", n);
exit(1);
}
+ n = 1;
return (0);
}
@@ -32,11 +28,13 @@ int main()
pthread_t td;
int i;
- pthread_create(&td, NULL, f1, NULL);
- pthread_join(td, NULL);
for (i = 0; i < 1000; ++i) {
- pthread_create(&td, NULL, f2, NULL);
- pthread_yield();
+ pthread_create(&td, NULL, f1, NULL);
+ pthread_join(td, NULL);
+ }
+ sleep(2);
+ for (i = 0; i < 1000; ++i) {
+ pthread_create(&td, NULL, f1, NULL);
pthread_join(td, NULL);
}
return (0);
OpenPOWER on IntegriCloud