From 71d52ac4d65435791d8fa9f52abab7107ef7f7e8 Mon Sep 17 00:00:00 2001 From: Samuel Thibault Date: Sun, 9 Feb 2020 17:00:39 +0000 Subject: pthread: Move spin tests from nptl to sysdeps/pthread So they can be checked with htl too. --- nptl/tst-spin4.c | 108 ------------------------------------------------------- 1 file changed, 108 deletions(-) delete mode 100644 nptl/tst-spin4.c (limited to 'nptl/tst-spin4.c') diff --git a/nptl/tst-spin4.c b/nptl/tst-spin4.c deleted file mode 100644 index 99fe7aa6aa..0000000000 --- a/nptl/tst-spin4.c +++ /dev/null @@ -1,108 +0,0 @@ -#include -#include -#include - -static int count = 0; - -static void * -thread_add_one (void *arg) -{ - int tmp; - pthread_spinlock_t *lock = (pthread_spinlock_t *) arg; - - /* When do_test holds the lock for 1 sec, the two thread will be - in contention for the lock. */ - if (pthread_spin_lock (lock) != 0) - { - puts ("thread_add_one(): spin_lock failed"); - pthread_exit ((void *) 1l); - } - - /* sleep 1s before modifying count */ - tmp = count; - sleep (1); - count = tmp + 1; - - if (pthread_spin_unlock (lock) != 0) - { - puts ("thread_add_one(): spin_unlock failed"); - pthread_exit ((void *) 1l); - } - - return NULL; -} - -static int -do_test (void) -{ - pthread_t thr1, thr2; - pthread_spinlock_t lock; - int tmp; - - if (pthread_spin_init (&lock, PTHREAD_PROCESS_PRIVATE) != 0) - { - puts ("spin_init failed"); - return 1; - } - - if (pthread_spin_lock (&lock) != 0) - { - puts ("1st spin_lock failed"); - return 1; - } - - if (pthread_create (&thr1, NULL, thread_add_one, (void *) &lock) != 0) - { - puts ("1st pthread_create failed"); - return 1; - } - - if (pthread_create (&thr2, NULL, thread_add_one, (void *) &lock) != 0) - { - puts ("2nd pthread_create failed"); - return 1; - } - - /* sleep 1s before modifying count */ - tmp = count; - sleep (1); - count = tmp + 1; - - if (pthread_spin_unlock (&lock) != 0) - { - puts ("1st spin_unlock failed"); - return 1; - } - - void *status; - if (pthread_join (thr1, &status) != 0) - { - puts ("1st pthread_join failed"); - return 1; - } - if (status != NULL) - { - puts ("failure in the 1st thread"); - return 1; - } - if (pthread_join (thr2, &status) != 0) - { - puts ("2nd pthread_join failed"); - return 1; - } - if (status != NULL) - { - puts ("failure in the 2nd thread"); - return 1; - } - - if (count != 3) - { - printf ("count is %d, should be 3\n", count); - return 1; - } - return 0; -} - -#define TEST_FUNCTION do_test () -#include "../test-skeleton.c" -- cgit 1.4.1