diff options
author | Ulrich Drepper <drepper@redhat.com> | 2006-09-15 07:48:10 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2006-09-15 07:48:10 +0000 |
commit | 4cd3633d1acf8861ace92260f07893e6fdd173e9 (patch) | |
tree | 6cc5894e130b993aaa0cd173a0102eb4fddba567 /nptl/tst-cond22.c | |
parent | 30aa57851a93d6efd6493c5a29cf82f58083bdf4 (diff) | |
download | glibc-4cd3633d1acf8861ace92260f07893e6fdd173e9.zip glibc-4cd3633d1acf8861ace92260f07893e6fdd173e9.tar.gz glibc-4cd3633d1acf8861ace92260f07893e6fdd173e9.tar.bz2 |
2006-09-14 Jakub Jelinek <jakub@redhat.com>cvs/fedora-glibc-20060915T0943
Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_cap_flags): Add 4 new cap
names to the beginning. Rename "cell" to "cellbe".
(_dl_powerpc_platforms): New.
* sysdeps/powerpc/dl-procinfo.h (_DL_HWCAP_FIRST): Decrease.
(HWCAP_IMPORTANT): Remove power{4,5,5+} and cell.
(_DL_PLATFORMS_COUNT, _DL_FIRST_PLATFORM): Define.
(_DL_HWCAP_PLATFORM): Define to new mask.
(_dl_platform_string, _dl_string_platform): New functions.
* sysdeps/powerpc/sysdep.h (PPC_FEATURE_BOOKE, PPC_FEATURE_SMT,
PPC_FEATURE_ICACHE_SNOOP, PPC_FEATURE_ARCH_2_05): Define.
Diffstat (limited to 'nptl/tst-cond22.c')
-rw-r--r-- | nptl/tst-cond22.c | 27 |
1 files changed, 13 insertions, 14 deletions
diff --git a/nptl/tst-cond22.c b/nptl/tst-cond22.c index e7c8d01..aff38fc 100644 --- a/nptl/tst-cond22.c +++ b/nptl/tst-cond22.c @@ -34,20 +34,19 @@ tf (void *arg) the cond_wait call left the cancelable area and is then waiting on the mutex. In this case the beginning of the second cond_wait call will cause the cancellation to happen. */ - while (1) - { - if (pthread_cond_wait (&c, &m) != 0) - { - printf ("%s: cond_wait failed\n", __func__); - exit (1); - } - if (pthread_mutex_unlock (&m) != 0) - { - printf ("%s: mutex_unlock failed\n", __func__); - exit (1); - } - } + do + if (pthread_cond_wait (&c, &m) != 0) + { + printf ("%s: cond_wait failed\n", __func__); + exit (1); + } + while (arg == NULL); pthread_cleanup_pop (0); + if (pthread_mutex_unlock (&m) != 0) + { + printf ("%s: mutex_unlock failed\n", __func__); + exit (1); + } return NULL; } @@ -112,7 +111,7 @@ do_test (void) c.__data.__wakeup_seq, c.__data.__woken_seq, c.__data.__mutex, c.__data.__nwaiters, c.__data.__broadcast_seq); - if (pthread_create (&th, NULL, tf, NULL) != 0) + if (pthread_create (&th, NULL, tf, (void *) 1l) != 0) { puts ("2nd create failed"); return 1; |