[PATCH v4 3/4] man/man2/prctl.2, PR_FUTEX_HASH_GET_SLOTS.2const: Document PR_FUTEX_HASH_GET_SLOTS

Sebastian Andrzej Siewior
2025-06-02T14:01:10Z

Reviewed-by: Alejandro Colomar <alx@kernel.org>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
---
man/man2const/PR_FUTEX_HASH_GET_SLOTS.2const | 37 ++++++++++++++++++++
man/man2const/PR_FUTEX_HASH_SET_SLOTS.2const | 7 ++--
2 files changed, 40 insertions(+), 4 deletions(-)
create mode 100644 man/man2const/PR_FUTEX_HASH_GET_SLOTS.2const

diff --git a/man/man2const/PR_FUTEX_HASH_GET_SLOTS.2const b/man/man2const/PR_FUTEX_HASH_GET_SLOTS.2const
new file mode 100644
index 0000000000000..f5c6380ef1fe7
--- /dev/null
+++ b/man/man2const/PR_FUTEX_HASH_GET_SLOTS.2const
@@ -0,0 +1,37 @@
+.\" Copyright, the authors of the Linux man-pages project
+.\"
+.\" SPDX-License-Identifier: Linux-man-pages-copyleft
+.\"
+.TH PR_FUTEX_HASH_GET_SLOTS 2const (date) "Linux man-pages (unreleased)"
+.SH NAME
+PR_FUTEX_HASH_GET_SLOTS
+\-
+return the size of the private hash
+.SH LIBRARY
+Standard C library
+.RI ( libc ,\~ \-lc )
+.SH SYNOPSIS
+.nf
+.BR "#include <linux/prctl.h>" " /* Definition of " PR_* " constants */"
+.B #include <sys/prctl.h>
+.P
+.B int prctl(PR_FUTEX_HASH, PR_FUTEX_HASH_GET_SLOTS);
+.fi
+.SH DESCRIPTION
+Return the current size of the private hash.
+.SH RETURN VALUE
+A value of 0 means that a private hash has not been allocated
+and the global hash is in use.
+A value >0 specifies the size of the private hash.
+On error, \-1 is returned, and
+.I errno
+is set to indicate the error.
+.SH STANDARDS
+Linux.
+.SH HISTORY
+Linux 6.16.
+.SH SEE ALSO
+.BR prctl (2),
+.BR PR_FUTEX_HASH (2const),
+.BR PR_FUTEX_HASH_GET_IMMUTABLE (2const),
+.BR PR_FUTEX_HASH_SET_SLOTS (2const)
diff --git a/man/man2const/PR_FUTEX_HASH_SET_SLOTS.2const b/man/man2const/PR_FUTEX_HASH_SET_SLOTS.2const
index 1f08d1bb30485..531e3bcca112d 100644
--- a/man/man2const/PR_FUTEX_HASH_SET_SLOTS.2const
+++ b/man/man2const/PR_FUTEX_HASH_SET_SLOTS.2const
@@ -29,7 +29,7 @@ Specifies the size of private hash to allocate.
Use the global hash.
This is the behaviour used before 6.16.
The operation implies the
-.I FH_FLAG_IMMUTABLE
+.B FH_FLAG_IMMUTABLE
flag.
.TP
.I >0
@@ -38,7 +38,7 @@ The value must be power of two and the lowest possible value is 2.
The upper limit depends on the available memory in the system.
Each slot requires 64bytes of memory.
Kernels compiled with
-.I CONFIG_PROVE_LOCKING
+.B CONFIG_PROVE_LOCKING
will consume more than that.
.RE
.TP
@@ -46,7 +46,7 @@ will consume more than that.
.RS
The following flags can be specified:
.TP
-.I FH_FLAG_IMMUTABLE
+.B FH_FLAG_IMMUTABLE
The private hash can no longer be changed.
By using an immutable private hash
the kernel can avoid some accounting for the data structure.
@@ -54,7 +54,6 @@ This accounting is visible in benchmarks if many
.BR futex (2)
operations are invoked in parallel on different CPUs.
.RE
-.RE
.SH RETURN VALUE
On success,
0 is returned.
--
2.49.0