Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 23 Apr 2024 16:52:39 GMT
From:      Konstantin Belousov <kib@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Subject:   git: 91da6becae62 - main - pthread_sigqueue(3): document
Message-ID:  <202404231652.43NGqdwI088276@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by kib:

URL: https://cgit.FreeBSD.org/src/commit/?id=91da6becae6291533b9b59646b59bace2f905c81

commit 91da6becae6291533b9b59646b59bace2f905c81
Author:     Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2024-04-20 22:16:08 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2024-04-23 16:51:25 +0000

    pthread_sigqueue(3): document
    
    Reviewed by:    markj
    Sponsored by:   The FreeBSD Foundation
    MFC after:      1 week
    Differential revision:  https://reviews.freebsd.org/D44867
---
 share/man/man3/Makefile           |   1 +
 share/man/man3/pthread_sigqueue.3 | 102 ++++++++++++++++++++++++++++++++++++++
 2 files changed, 103 insertions(+)

diff --git a/share/man/man3/Makefile b/share/man/man3/Makefile
index d82ff2bccd51..5c8dced71743 100644
--- a/share/man/man3/Makefile
+++ b/share/man/man3/Makefile
@@ -452,6 +452,7 @@ PTHREAD_MAN=	pthread.3 \
 		pthread_set_name_np.3 \
 		pthread_setspecific.3 \
 		pthread_sigmask.3 \
+		pthread_sigqueue.3 \
 		pthread_spin_init.3 \
 		pthread_spin_lock.3 \
 		pthread_suspend_all_np.3 \
diff --git a/share/man/man3/pthread_sigqueue.3 b/share/man/man3/pthread_sigqueue.3
new file mode 100644
index 000000000000..bf5dd62f04e6
--- /dev/null
+++ b/share/man/man3/pthread_sigqueue.3
@@ -0,0 +1,102 @@
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
+.\" Copyright 2024 The FreeBSD Foundation, Inc.
+.\"
+.\" This documentation was written by
+.\" Konstantin Belousov <kib@FreeBSD.org> under sponsorship
+.\" from the FreeBSD Foundation.
+.\"
+.\" 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(s), this list of conditions and the following disclaimer as
+.\"    the first lines of this file unmodified other than the possible
+.\"    addition of one or more copyright notices.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice(s), 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 COPYRIGHT HOLDER(S) ``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 COPYRIGHT HOLDER(S) 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 April 21, 2024
+.Dt PTHREAD_SIGQUEUE 3
+.Os
+.Sh NAME
+.Nm pthread_sigqueue
+.Nd queue a signal to a specified thread
+.Sh LIBRARY
+.Lb libpthread
+.Sh SYNOPSIS
+.In pthread.h
+.In signal.h
+.Ft int
+.Fn pthread_sigqueue "pthread_t thread" "int sig" "const union sigval value"
+.Sh DESCRIPTION
+The
+.Fn pthread_queue
+function queues a signal, specified by
+.Fa sig ,
+to a thread, specified by
+.Fa thread .
+If
+.Fa sig
+is 0, error checking is performed, but no signal is actually sent.
+The
+.Fa value
+is queued together with the signal, and becomes available in
+.Vt siginfo_t
+data passed to the signal handler.
+.Pp
+The
+.Nm
+function is similar to
+.Xr sigqueue 2 ,
+but targets a thread in the current process instead of a process.
+See
+.Xr sigqueue 2
+for details about signal queueing and delivery selection.
+.Sh RETURN VALUES
+If successful,
+.Fn pthread_sigqueue
+returns 0.
+Otherwise, an error number is returned.
+.Sh ERRORS
+The
+.Fn pthread_sigqueue
+function will fail if:
+.Bl -tag -width Er
+.It Bq Er EAGAIN
+No resources are available to queue the signal.
+The current process has already queued
+.Brq Dv SIGQUEUE_MAX
+signals that are still pending,
+or a system-wide resource limit has been exceeded.
+.It Bq Er ESRCH
+.Fa thread
+is an invalid thread ID.
+.It Bq Er EINVAL
+.Fa sig
+is an invalid or unsupported signal number.
+.El
+.Sh SEE ALSO
+.Xr sigqueue 2
+.Sh STANDARDS
+The
+.Fn pthread_sigqueue
+function is a
+.Fx
+extension.
+An identical function with the same semantic is available in other
+operating systems.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202404231652.43NGqdwI088276>