Lines Matching refs:sibling
2474 struct tsync_sibling sibling[TSYNC_SIBLINGS]; in FIXTURE() local
2496 memset(&self->sibling, 0, sizeof(self->sibling)); in FIXTURE_SETUP()
2511 self->sibling[0].tid = 0; in FIXTURE_SETUP()
2512 self->sibling[0].cond = &self->cond; in FIXTURE_SETUP()
2513 self->sibling[0].started = &self->started; in FIXTURE_SETUP()
2514 self->sibling[0].mutex = &self->mutex; in FIXTURE_SETUP()
2515 self->sibling[0].diverge = 0; in FIXTURE_SETUP()
2516 self->sibling[0].num_waits = 1; in FIXTURE_SETUP()
2517 self->sibling[0].prog = &self->root_prog; in FIXTURE_SETUP()
2518 self->sibling[0].metadata = _metadata; in FIXTURE_SETUP()
2519 self->sibling[1].tid = 0; in FIXTURE_SETUP()
2520 self->sibling[1].cond = &self->cond; in FIXTURE_SETUP()
2521 self->sibling[1].started = &self->started; in FIXTURE_SETUP()
2522 self->sibling[1].mutex = &self->mutex; in FIXTURE_SETUP()
2523 self->sibling[1].diverge = 0; in FIXTURE_SETUP()
2524 self->sibling[1].prog = &self->root_prog; in FIXTURE_SETUP()
2525 self->sibling[1].num_waits = 1; in FIXTURE_SETUP()
2526 self->sibling[1].metadata = _metadata; in FIXTURE_SETUP()
2539 struct tsync_sibling *s = &self->sibling[sib]; in FIXTURE_TEARDOWN()
2586 void tsync_start_sibling(struct tsync_sibling *sibling) in tsync_start_sibling() argument
2588 pthread_create(&sibling->tid, NULL, tsync_sibling, (void *)sibling); in tsync_start_sibling()
2620 self->sibling[0].diverge = 1; in TEST_F()
2621 tsync_start_sibling(&self->sibling[0]); in TEST_F()
2622 tsync_start_sibling(&self->sibling[1]); in TEST_F()
2637 PTHREAD_JOIN(self->sibling[0].tid, &status); in TEST_F()
2639 PTHREAD_JOIN(self->sibling[1].tid, &status); in TEST_F()
2659 tsync_start_sibling(&self->sibling[0]); in TEST_F()
2660 tsync_start_sibling(&self->sibling[1]); in TEST_F()
2679 PTHREAD_JOIN(self->sibling[0].tid, &status); in TEST_F()
2681 PTHREAD_JOIN(self->sibling[1].tid, &status); in TEST_F()
2690 tsync_start_sibling(&self->sibling[0]); in TEST_F()
2691 tsync_start_sibling(&self->sibling[1]); in TEST_F()
2705 PTHREAD_JOIN(self->sibling[0].tid, &status); in TEST_F()
2707 PTHREAD_JOIN(self->sibling[1].tid, &status); in TEST_F()
2717 tsync_start_sibling(&self->sibling[0]); in TEST_F()
2718 tsync_start_sibling(&self->sibling[1]); in TEST_F()
2745 PTHREAD_JOIN(self->sibling[0].tid, &status); in TEST_F()
2747 PTHREAD_JOIN(self->sibling[1].tid, &status); in TEST_F()
2767 self->sibling[0].diverge = 1; in TEST_F()
2768 tsync_start_sibling(&self->sibling[0]); in TEST_F()
2769 tsync_start_sibling(&self->sibling[1]); in TEST_F()
2778 ASSERT_EQ(self->sibling[0].system_tid, ret) { in TEST_F()
2790 PTHREAD_JOIN(self->sibling[0].tid, &status); in TEST_F()
2792 PTHREAD_JOIN(self->sibling[1].tid, &status); in TEST_F()
2812 self->sibling[0].diverge = 1; in TEST_F()
2813 tsync_start_sibling(&self->sibling[0]); in TEST_F()
2814 tsync_start_sibling(&self->sibling[1]); in TEST_F()
2839 PTHREAD_JOIN(self->sibling[0].tid, &status); in TEST_F()
2841 PTHREAD_JOIN(self->sibling[1].tid, &status); in TEST_F()
2861 self->sibling[0].diverge = 1; in TEST_F()
2862 tsync_start_sibling(&self->sibling[0]); in TEST_F()
2863 tsync_start_sibling(&self->sibling[1]); in TEST_F()
2880 ASSERT_EQ(ret, self->sibling[0].system_tid) { in TEST_F()
2884 if (ret == self->sibling[0].system_tid) in TEST_F()
2892 self->sibling[!sib].num_waits += 1; in TEST_F()
2899 PTHREAD_JOIN(self->sibling[sib].tid, &status); in TEST_F()
2902 while (!kill(self->sibling[sib].system_tid, 0)) in TEST_F()
2918 if (self->sibling[sib].num_waits > 1) in TEST_F()
2919 self->sibling[sib].num_waits = 1; in TEST_F()
2924 PTHREAD_JOIN(self->sibling[sib].tid, &status); in TEST_F()
2927 while (!kill(self->sibling[sib].system_tid, 0)) in TEST_F()