From: H.J. Lu Date: Mon, 8 Apr 2024 19:33:36 +0000 (-0700) Subject: nptl: Add tst-pthread-key1-static for BZ #21777 X-Git-Tag: glibc-2.40~277 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=42e48e720c78ab75eb8def9e866da52b0ac278df;p=thirdparty%2Fglibc.git nptl: Add tst-pthread-key1-static for BZ #21777 Add a static pthread static tests to verify that BZ #21777 is fixed. Reviewed-by: Florian Weimer --- diff --git a/nptl/Makefile b/nptl/Makefile index bf09603e7b..b3f8af2e1c 100644 --- a/nptl/Makefile +++ b/nptl/Makefile @@ -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 \ diff --git a/nptl/tst-pthread-key1-static.c b/nptl/tst-pthread-key1-static.c new file mode 100644 index 0000000000..9cf93c7535 --- /dev/null +++ b/nptl/tst-pthread-key1-static.c @@ -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 + . */ + +#include +#include + +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