semtimed_wait cancel point
authorSzabolcs Nagy <nsz@port70.net>
Thu, 9 Apr 2015 00:39:21 +0000 (00:39 +0000)
committerSzabolcs Nagy <nsz@port70.net>
Thu, 9 Apr 2015 00:39:21 +0000 (00:39 +0000)
src/regression/pthread_cancel-sem_wait.c

index a1ea733..15a5b4c 100644 (file)
@@ -50,9 +50,9 @@ int main(void)
        TESTR(r, pthread_create(&td, 0, start_sem_wait, 0), "failed to create thread");
        TESTR(r, pthread_cancel(td), "canceling");
        sem_post(&sem1);
        TESTR(r, pthread_create(&td, 0, start_sem_wait, 0), "failed to create thread");
        TESTR(r, pthread_cancel(td), "canceling");
        sem_post(&sem1);
-       TESTR(r, pthread_join(td, &res), "joining canceled thread");
-       TESTC(res == PTHREAD_CANCELED, "canceled thread exit status");
-       TESTC(seqno == 1, "seqno");
+       TESTR(r, pthread_join(td, &res), "joining canceled thread after uncontended sem_wait");
+       TESTC(res == PTHREAD_CANCELED, "canceled thread exit status after uncontended sem_wait");
+       TESTC(seqno == 1, "uncontended sem_wait");
 
        /* Cancellation on blocking sem_wait */
        seqno = 0;
 
        /* Cancellation on blocking sem_wait */
        seqno = 0;
@@ -60,29 +60,29 @@ int main(void)
        TESTR(r, pthread_create(&td, 0, start_sem_wait, 0), "failed to create thread");
        TESTR(r, pthread_cancel(td), "canceling");
        sem_post(&sem1);
        TESTR(r, pthread_create(&td, 0, start_sem_wait, 0), "failed to create thread");
        TESTR(r, pthread_cancel(td), "canceling");
        sem_post(&sem1);
-       TESTR(r, pthread_join(td, &res), "joining canceled thread");
-       TESTC(res == PTHREAD_CANCELED, "canceled thread exit status");
-       TESTC(seqno == 1, "seqno");
+       TESTR(r, pthread_join(td, &res), "joining canceled thread after blocking sem_wait");
+       TESTC(res == PTHREAD_CANCELED, "canceled thread exit status after blocking sem_wait");
+       TESTC(seqno == 1, "blocking sem_wait");
 
        /* Cancellation on uncontended sem_timedwait */
        seqno = 0;
        sem_post(&sem2);
 
        /* Cancellation on uncontended sem_timedwait */
        seqno = 0;
        sem_post(&sem2);
-       TESTR(r, pthread_create(&td, 0, start_sem_wait, 0), "failed to create thread");
+       TESTR(r, pthread_create(&td, 0, start_sem_timedwait, 0), "failed to create thread");
        TESTR(r, pthread_cancel(td), "canceling");
        sem_post(&sem1);
        TESTR(r, pthread_cancel(td), "canceling");
        sem_post(&sem1);
-       TESTR(r, pthread_join(td, &res), "joining canceled thread");
-       TESTC(res == PTHREAD_CANCELED, "canceled thread exit status");
-       TESTC(seqno == 1, "seqno");
+       TESTR(r, pthread_join(td, &res), "joining canceled thread after uncontended sem_timedwait");
+       TESTC(res == PTHREAD_CANCELED, "canceled thread exit status after uncontended sem_timedwait");
+       TESTC(seqno == 1, "uncontended sem_timedwait");
 
        /* Cancellation on blocking sem_timedwait */
        seqno = 0;
        sem_trywait(&sem2);
 
        /* Cancellation on blocking sem_timedwait */
        seqno = 0;
        sem_trywait(&sem2);
-       TESTR(r, pthread_create(&td, 0, start_sem_wait, 0), "failed to create thread");
+       TESTR(r, pthread_create(&td, 0, start_sem_timedwait, 0), "failed to create thread");
        TESTR(r, pthread_cancel(td), "canceling");
        sem_post(&sem1);
        TESTR(r, pthread_cancel(td), "canceling");
        sem_post(&sem1);
-       TESTR(r, pthread_join(td, &res), "joining canceled thread");
-       TESTC(res == PTHREAD_CANCELED, "canceled thread exit status");
-       TESTC(seqno == 1, "seqno");
+       TESTR(r, pthread_join(td, &res), "joining canceled thread after blocking sem_timedwait");
+       TESTC(res == PTHREAD_CANCELED, "canceled thread exit status after blocking sem_timedwait");
+       TESTC(seqno == 1, "blocking sem_timedwait");
 
        return t_status;
 }
 
        return t_status;
 }