Lines Matching refs:sibling
2542 struct tsync_sibling sibling[TSYNC_SIBLINGS]; in FIXTURE() local
2564 memset(&self->sibling, 0, sizeof(self->sibling)); in FIXTURE_SETUP()
2579 self->sibling[0].tid = 0; in FIXTURE_SETUP()
2580 self->sibling[0].cond = &self->cond; in FIXTURE_SETUP()
2581 self->sibling[0].started = &self->started; in FIXTURE_SETUP()
2582 self->sibling[0].mutex = &self->mutex; in FIXTURE_SETUP()
2583 self->sibling[0].diverge = 0; in FIXTURE_SETUP()
2584 self->sibling[0].num_waits = 1; in FIXTURE_SETUP()
2585 self->sibling[0].prog = &self->root_prog; in FIXTURE_SETUP()
2586 self->sibling[0].metadata = _metadata; in FIXTURE_SETUP()
2587 self->sibling[1].tid = 0; in FIXTURE_SETUP()
2588 self->sibling[1].cond = &self->cond; in FIXTURE_SETUP()
2589 self->sibling[1].started = &self->started; in FIXTURE_SETUP()
2590 self->sibling[1].mutex = &self->mutex; in FIXTURE_SETUP()
2591 self->sibling[1].diverge = 0; in FIXTURE_SETUP()
2592 self->sibling[1].prog = &self->root_prog; in FIXTURE_SETUP()
2593 self->sibling[1].num_waits = 1; in FIXTURE_SETUP()
2594 self->sibling[1].metadata = _metadata; in FIXTURE_SETUP()
2607 struct tsync_sibling *s = &self->sibling[sib]; in FIXTURE_TEARDOWN()
2654 void tsync_start_sibling(struct tsync_sibling *sibling) in tsync_start_sibling() argument
2656 pthread_create(&sibling->tid, NULL, tsync_sibling, (void *)sibling); in tsync_start_sibling()
2688 self->sibling[0].diverge = 1; in TEST_F()
2689 tsync_start_sibling(&self->sibling[0]); in TEST_F()
2690 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()
2727 tsync_start_sibling(&self->sibling[0]); in TEST_F()
2728 tsync_start_sibling(&self->sibling[1]); in TEST_F()
2747 PTHREAD_JOIN(self->sibling[0].tid, &status); in TEST_F()
2749 PTHREAD_JOIN(self->sibling[1].tid, &status); in TEST_F()
2758 tsync_start_sibling(&self->sibling[0]); in TEST_F()
2759 tsync_start_sibling(&self->sibling[1]); in TEST_F()
2773 PTHREAD_JOIN(self->sibling[0].tid, &status); in TEST_F()
2775 PTHREAD_JOIN(self->sibling[1].tid, &status); in TEST_F()
2785 tsync_start_sibling(&self->sibling[0]); in TEST_F()
2786 tsync_start_sibling(&self->sibling[1]); in TEST_F()
2813 PTHREAD_JOIN(self->sibling[0].tid, &status); in TEST_F()
2815 PTHREAD_JOIN(self->sibling[1].tid, &status); in TEST_F()
2835 self->sibling[0].diverge = 1; in TEST_F()
2836 tsync_start_sibling(&self->sibling[0]); in TEST_F()
2837 tsync_start_sibling(&self->sibling[1]); in TEST_F()
2846 ASSERT_EQ(self->sibling[0].system_tid, ret) { in TEST_F()
2858 PTHREAD_JOIN(self->sibling[0].tid, &status); in TEST_F()
2860 PTHREAD_JOIN(self->sibling[1].tid, &status); in TEST_F()
2880 self->sibling[0].diverge = 1; in TEST_F()
2881 tsync_start_sibling(&self->sibling[0]); in TEST_F()
2882 tsync_start_sibling(&self->sibling[1]); in TEST_F()
2907 PTHREAD_JOIN(self->sibling[0].tid, &status); in TEST_F()
2909 PTHREAD_JOIN(self->sibling[1].tid, &status); in TEST_F()
2929 self->sibling[0].diverge = 1; in TEST_F()
2930 tsync_start_sibling(&self->sibling[0]); in TEST_F()
2931 tsync_start_sibling(&self->sibling[1]); in TEST_F()
2948 ASSERT_EQ(ret, self->sibling[0].system_tid) { in TEST_F()
2952 if (ret == self->sibling[0].system_tid) in TEST_F()
2960 self->sibling[!sib].num_waits += 1; in TEST_F()
2967 PTHREAD_JOIN(self->sibling[sib].tid, &status); in TEST_F()
2970 while (!kill(self->sibling[sib].system_tid, 0)) in TEST_F()
2986 if (self->sibling[sib].num_waits > 1) in TEST_F()
2987 self->sibling[sib].num_waits = 1; in TEST_F()
2992 PTHREAD_JOIN(self->sibling[sib].tid, &status); in TEST_F()
2995 while (!kill(self->sibling[sib].system_tid, 0)) in TEST_F()