about summary refs log tree commit diff
path: root/nptl/tst-thread-affinity-sched.c
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2020-05-15 11:26:37 +0200
committerFlorian Weimer <fweimer@redhat.com>2020-05-20 20:22:31 +0200
commit714da1d4eac32400187255254dd40334b48b80f3 (patch)
tree71304ad87efc30ceaa5b16b8475670c9d9d76270 /nptl/tst-thread-affinity-sched.c
parentb6ad64b907ab0066902215cf28eadc1e97307e84 (diff)
downloadglibc-714da1d4eac32400187255254dd40334b48b80f3.tar.gz
glibc-714da1d4eac32400187255254dd40334b48b80f3.tar.xz
glibc-714da1d4eac32400187255254dd40334b48b80f3.zip
nptl: Replace some stubs with the Linux implementation
The stubs for pthread_getaffinity_np, pthread_getname_np,
pthread_setaffinity_np, pthread_setname_np are replaced, and corresponding
tests are moved.

After the removal of the NaCl port, nptl is Linux-specific, and the stubs
are no longer needed.  This effectively reverts commit
c76d1ff5149bd03210f2bb8cd64446c51618d016 ("NPTL: Add stubs for Linux-only
extension functions.").

Reviewed-by: Carlos O'Donell <carlos@redhat.com>
Diffstat (limited to 'nptl/tst-thread-affinity-sched.c')
-rw-r--r--nptl/tst-thread-affinity-sched.c36
1 files changed, 36 insertions, 0 deletions
diff --git a/nptl/tst-thread-affinity-sched.c b/nptl/tst-thread-affinity-sched.c
new file mode 100644
index 0000000000..9fe4613a8f
--- /dev/null
+++ b/nptl/tst-thread-affinity-sched.c
@@ -0,0 +1,36 @@
+/* Multi-threaded test for sched_getaffinity_np, sched_setaffinity_np.
+   Copyright (C) 2015-2020 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 <sched.h>
+
+/* Defined for the benefit of tst-skeleton-thread-affinity.c, included
+   below.  */
+
+static int
+getaffinity (size_t size, cpu_set_t *set)
+{
+  return sched_getaffinity (0, size, set);
+}
+
+static int
+setaffinity (size_t size, const cpu_set_t *set)
+{
+  return sched_setaffinity (0, size, set);
+}
+
+#include "tst-skeleton-thread-affinity.c"