From 42e48e720c78ab75eb8def9e866da52b0ac278df Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Mon, 8 Apr 2024 12:33:36 -0700 Subject: [PATCH] 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 --- nptl/Makefile | 2 ++ nptl/tst-pthread-key1-static.c | 37 ++++++++++++++++++++++++++++++++++ 2 files changed, 39 insertions(+) create mode 100644 nptl/tst-pthread-key1-static.c 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