git: 39f442502167 - stable/14 - pthread_switch_add_np(3): remove
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 26 May 2025 08:17:05 UTC
The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=39f4425021678ee9069aa15946c4946e0bdd49e3 commit 39f4425021678ee9069aa15946c4946e0bdd49e3 Author: Konstantin Belousov <kib@FreeBSD.org> AuthorDate: 2025-05-16 13:25:34 +0000 Commit: Konstantin Belousov <kib@FreeBSD.org> CommitDate: 2025-05-26 08:16:35 +0000 pthread_switch_add_np(3): remove (cherry picked from commit c0fdd2bf944bb646116c6cd9879560579ebaa563) --- include/pthread_np.h | 7 --- lib/libthr/thread/thr_switch_np.c | 5 +- share/man/man3/Makefile | 2 - share/man/man3/pthread_np.3 | 10 ---- share/man/man3/pthread_switch_add_np.3 | 86 ---------------------------------- 5 files changed, 4 insertions(+), 106 deletions(-) diff --git a/include/pthread_np.h b/include/pthread_np.h index 8f0180d4bd04..dcc762156a67 100644 --- a/include/pthread_np.h +++ b/include/pthread_np.h @@ -34,11 +34,6 @@ #include <sys/param.h> #include <sys/cpuset.h> -/* - * Non-POSIX type definitions: - */ -typedef void (*pthread_switch_routine_t)(pthread_t, pthread_t); - /* * Non-POSIX thread function prototype definitions: */ @@ -67,8 +62,6 @@ int pthread_setaffinity_np(pthread_t, size_t, const cpuset_t *); int pthread_single_np(void); void pthread_suspend_all_np(void); int pthread_suspend_np(pthread_t); -int pthread_switch_add_np(pthread_switch_routine_t); -int pthread_switch_delete_np(pthread_switch_routine_t); int pthread_timedjoin_np(pthread_t, void **, const struct timespec *); __END_DECLS diff --git a/lib/libthr/thread/thr_switch_np.c b/lib/libthr/thread/thr_switch_np.c index 80cd34c15650..59a9a4c7e1a3 100644 --- a/lib/libthr/thread/thr_switch_np.c +++ b/lib/libthr/thread/thr_switch_np.c @@ -40,10 +40,13 @@ #include "thr_private.h" - __weak_reference(_pthread_switch_add_np, pthread_switch_add_np); __weak_reference(_pthread_switch_delete_np, pthread_switch_delete_np); +typedef void (*pthread_switch_routine_t)(pthread_t, pthread_t); +int _pthread_switch_add_np(pthread_switch_routine_t routine); +int _pthread_switch_delete_np(pthread_switch_routine_t routine); + int _pthread_switch_add_np(pthread_switch_routine_t routine __unused) { diff --git a/share/man/man3/Makefile b/share/man/man3/Makefile index 5f336b6b7d2a..3aa215d095e7 100644 --- a/share/man/man3/Makefile +++ b/share/man/man3/Makefile @@ -463,7 +463,6 @@ PTHREAD_MAN= pthread.3 \ pthread_spin_lock.3 \ pthread_suspend_all_np.3 \ pthread_suspend_np.3 \ - pthread_switch_add_np.3 \ pthread_testcancel.3 \ pthread_yield.3 @@ -528,7 +527,6 @@ PTHREAD_MLINKS+=pthread_set_name_np.3 pthread_get_name_np.3 \ PTHREAD_MLINKS+=pthread_spin_init.3 pthread_spin_destroy.3 \ pthread_spin_lock.3 pthread_spin_trylock.3 \ pthread_spin_lock.3 pthread_spin_unlock.3 -PTHREAD_MLINKS+=pthread_switch_add_np.3 pthread_switch_delete_np.3 PTHREAD_MLINKS+=pthread_testcancel.3 pthread_setcancelstate.3 \ pthread_testcancel.3 pthread_setcanceltype.3 PTHREAD_MLINKS+=pthread_join.3 pthread_peekjoin_np.3 \ diff --git a/share/man/man3/pthread_np.3 b/share/man/man3/pthread_np.3 index caab8cc13209..9fb2544dd3c9 100644 --- a/share/man/man3/pthread_np.3 +++ b/share/man/man3/pthread_np.3 @@ -132,16 +132,6 @@ Suspend the specified thread. Suspend all active threads. .It Xo .Ft int -.Fn pthread_switch_add_np "pthread_switch_routine_t routine" -.Xc -Install a routine that is called every time a thread context switches. -.It Xo -.Ft int -.Fn pthread_switch_delete_np "pthread_switch_routine_t routine" -.Xc -Remove a routine that is called every time a thread context switches. -.It Xo -.Ft int .Fo pthread_timedjoin_np .Fa "pthread_t thread" "void **value_ptr" "const struct timespec *abstime" .Fc diff --git a/share/man/man3/pthread_switch_add_np.3 b/share/man/man3/pthread_switch_add_np.3 deleted file mode 100644 index f02ff15eedc3..000000000000 --- a/share/man/man3/pthread_switch_add_np.3 +++ /dev/null @@ -1,86 +0,0 @@ -.\" Copyright (c) 2003 Alexey Zelkin <phantom@FreeBSD.org> -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" -.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -.\" SUCH DAMAGE. -.\" -.Dd October 12, 2021 -.Dt PTHREAD_SWITCH_ADD_NP 3 -.Os -.Sh NAME -.Nm pthread_switch_add_np , -.Nm pthread_switch_delete_np -.Nd thread context switches debugging primitives -.Sh LIBRARY -.Lb libpthread -.Sh SYNOPSIS -.In pthread_np.h -.Ft int -.Fn pthread_switch_add_np "pthread_switch_routine_t routine" -.Ft int -.Fn pthread_switch_delete_np "pthread_switch_routine_t routine" -.Sh DESCRIPTION -An application is allowed to monitor the thread context switches inside -the threading library. -An application can install a routine that gets called every time a thread -(explicitly created by an application with the -.Xr pthread_create 3 -function) gets the context switched. -The routine is passed the thread IDs of the threads that are -being switched in and out. -Installation and removal of these hooks may be done using the -.Fn pthread_switch_add_np -and -.Fn pthread_switch_delete_np -functions respectively. -.Sh RETURN VALUES -If successful, -these functions return 0. -Otherwise, an error number is returned to indicate the error. -.Sh ERRORS -The -.Fn pthread_switch_add_np -may fail if: -.Bl -tag -width Er -.It Bq Er EINVAL -.Dv NULL -pointer was passed in the -.Fa routine -argument. -.El -.Pp -The -.Fn pthread_switch_delete_np -may fail if: -.Bl -tag -width Er -.It Bq Er EINVAL -The -.Fa routine -argument is different from the argument previously passed to the -.Fn pthread_switch_add_np -function. -.El -.Sh SEE ALSO -.Xr pthread_create 3 , -.Xr pthread_np 3 -.Sh AUTHORS -This manual page was written by -.An Alexey Zelkin Aq Mt phantom@FreeBSD.org .