[v2] nptl: Add tst-pthread-key1-static for BZ #21777
Checks
Context |
Check |
Description |
redhat-pt-bot/TryBot-apply_patch |
success
|
Patch applied to master at the time it was sent
|
redhat-pt-bot/TryBot-32bit |
success
|
Build for i686
|
linaro-tcwg-bot/tcwg_glibc_build--master-arm |
success
|
Testing passed
|
linaro-tcwg-bot/tcwg_glibc_check--master-arm |
success
|
Testing passed
|
linaro-tcwg-bot/tcwg_glibc_build--master-aarch64 |
success
|
Testing passed
|
linaro-tcwg-bot/tcwg_glibc_check--master-aarch64 |
success
|
Testing passed
|
Commit Message
Add a static pthread static tests to verify that BZ #21777 is fixed.
---
nptl/Makefile | 2 ++
nptl/tst-pthread-key1-static.c | 37 ++++++++++++++++++++++++++++++++++
2 files changed, 39 insertions(+)
create mode 100644 nptl/tst-pthread-key1-static.c
Comments
* H. J. Lu:
> + rc = pthread_setspecific(k, NULL);
Missing space before '('. Rest looks okay.
Reviewed-by: Florian Weimer <fweimer@redhat.com>
Thanks,
Florian
On Mon, Apr 8, 2024 at 10:36 PM Florian Weimer <fweimer@redhat.com> wrote:
>
> * H. J. Lu:
>
> > + rc = pthread_setspecific(k, NULL);
>
> Missing space before '('. Rest looks okay.
Fixed.
> Reviewed-by: Florian Weimer <fweimer@redhat.com>
>
> Thanks,
> Florian
>
This is what I am checking in.
Thanks.
@@ -315,6 +315,7 @@ tests = \
tst-pthread-defaultattr-free \
tst-pthread-gdb-attach \
tst-pthread-gdb-attach-static \
+ tst-pthread-key1-static \
tst-pthread-timedlock-lockloop \
tst-pthread_exit-nothreads \
tst-pthread_exit-nothreads-static \
@@ -536,6 +537,7 @@ tests-static += \
tst-mutex8-static \
tst-mutexpi8-static \
tst-pthread-gdb-attach-static \
+ tst-pthread-key1-static \
tst-pthread_exit-nothreads-static \
tst-sem11-static \
tst-sem12-static tst-cond11-static \
new file mode 100644
@@ -0,0 +1,37 @@
+/* Verify that static pthread executable works.
+ Copyright (C) 2024 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#include <pthread.h>
+#include <support/check.h>
+
+pthread_key_t k;
+
+static int
+do_test (void)
+{
+ int rc;
+
+ rc = pthread_key_create (&k, NULL);
+ TEST_VERIFY (rc == 0);
+ rc = pthread_setspecific(k, NULL);
+ TEST_VERIFY (rc == 0);
+
+ return 0;
+}
+
+#include <support/test-driver.c>