Module Name:    src
Committed By:   martin
Date:           Fri Sep 20 10:27:11 UTC 2024

Modified Files:
        src/distrib/sets/lists/comp [netbsd-10]: mi
        src/share/man/man9 [netbsd-10]: Makefile
Added Files:
        src/share/man/man9 [netbsd-10]: portfeatures.9

Log Message:
Pull up following revision(s) (requested by rin in ticket #878):

        distrib/sets/lists/comp/mi: revision 1.2426
        share/man/man9/portfeatures.9: revision 1.1
        share/man/man9/portfeatures.9: revision 1.2
        share/man/man9/portfeatures.9: revision 1.3
        share/man/man9/Makefile: revision 1.466

portfeatures(9): the man page for the __HAVE macros

The man page itself is a skeleton/template for now.  Please add short
descriptions and xrefs.  If the target man page doesn't yet document
relevant __HAVE macros (hi, mutex(9)), please add something there,
possibly in a .Sh IMPLEMENTATION NOTES section.
fix typos

Document __HAVE_UCAS_FULL and __HAVE_UCAS_MP.


To generate a diff of this commit:
cvs rdiff -u -r1.2425.2.6 -r1.2425.2.7 src/distrib/sets/lists/comp/mi
cvs rdiff -u -r1.465.2.3 -r1.465.2.4 src/share/man/man9/Makefile
cvs rdiff -u -r0 -r1.3.4.2 src/share/man/man9/portfeatures.9

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/distrib/sets/lists/comp/mi
diff -u src/distrib/sets/lists/comp/mi:1.2425.2.6 src/distrib/sets/lists/comp/mi:1.2425.2.7
--- src/distrib/sets/lists/comp/mi:1.2425.2.6	Wed Jul 24 09:54:51 2024
+++ src/distrib/sets/lists/comp/mi	Fri Sep 20 10:27:10 2024
@@ -1,4 +1,4 @@
-#	$NetBSD: mi,v 1.2425.2.6 2024/07/24 09:54:51 martin Exp $
+#	$NetBSD: mi,v 1.2425.2.7 2024/09/20 10:27:10 martin Exp $
 #
 # Note: don't delete entries from here - mark them as "obsolete" instead.
 ./etc/mtree/set.comp				comp-sys-root
@@ -12491,6 +12491,7 @@
 ./usr/share/man/cat9/pool_sethardlimit.0	comp-sys-catman		.cat
 ./usr/share/man/cat9/pool_sethiwat.0		comp-sys-catman		.cat
 ./usr/share/man/cat9/pool_setlowat.0		comp-sys-catman		.cat
+./usr/share/man/cat9/portfeatures.0		comp-sys-catman		.cat
 ./usr/share/man/cat9/postsig.0			comp-sys-catman		.cat
 ./usr/share/man/cat9/powerhook_disestablish.0	comp-sys-catman		.cat
 ./usr/share/man/cat9/powerhook_establish.0	comp-sys-catman		.cat
@@ -20839,6 +20840,7 @@
 ./usr/share/man/html9/pool_sethardlimit.html	comp-sys-htmlman	html
 ./usr/share/man/html9/pool_sethiwat.html	comp-sys-htmlman	html
 ./usr/share/man/html9/pool_setlowat.html	comp-sys-htmlman	html
+./usr/share/man/html9/portfeatures.html		comp-sys-htmlman	html
 ./usr/share/man/html9/postsig.html		comp-sys-htmlman	html
 ./usr/share/man/html9/powerhook_disestablish.html	comp-sys-htmlman	html
 ./usr/share/man/html9/powerhook_establish.html	comp-sys-htmlman	html
@@ -29348,6 +29350,7 @@
 ./usr/share/man/man9/pool_sethardlimit.9	comp-sys-man		.man
 ./usr/share/man/man9/pool_sethiwat.9		comp-sys-man		.man
 ./usr/share/man/man9/pool_setlowat.9		comp-sys-man		.man
+./usr/share/man/man9/portfeatures.9		comp-sys-man		.man
 ./usr/share/man/man9/postsig.9			comp-sys-man		.man
 ./usr/share/man/man9/powerhook_disestablish.9	comp-sys-man		.man
 ./usr/share/man/man9/powerhook_establish.9	comp-sys-man		.man

Index: src/share/man/man9/Makefile
diff -u src/share/man/man9/Makefile:1.465.2.3 src/share/man/man9/Makefile:1.465.2.4
--- src/share/man/man9/Makefile:1.465.2.3	Wed Jul 24 09:54:51 2024
+++ src/share/man/man9/Makefile	Fri Sep 20 10:27:11 2024
@@ -1,4 +1,4 @@
-#       $NetBSD: Makefile,v 1.465.2.3 2024/07/24 09:54:51 martin Exp $
+#       $NetBSD: Makefile,v 1.465.2.4 2024/09/20 10:27:11 martin Exp $
 
 #	Makefile for section 9 (kernel function and variable) manual pages.
 
@@ -44,8 +44,8 @@ MAN=	accept_filter.9 accf_data.9 accf_ht
 	panic.9 pathbuf.9 pci.9 pci_configure_bus.9 pci_intr.9 \
 	pci_msi.9 pckbport.9 pcmcia.9 pcq.9 pcu.9 \
 	percpu.9 pfil.9 physio.9 pktqueue.9 pmap.9 pmatch.9 pmf.9 pool.9 \
-	pool_cache.9 powerhook_establish.9 ppsratecheck.9 preempt.9 \
-	proc_find.9 pserialize.9 pslist.9 psref.9 putter.9 \
+	pool_cache.9 portfeatures.9 powerhook_establish.9 ppsratecheck.9 \
+	preempt.9 proc_find.9 pserialize.9 pslist.9 psref.9 putter.9 \
 	radio.9 ras.9 rasops.9 ratecheck.9 resettodr.9 rnd.9 \
 	roundup.9 rssadapt.9 rt_timer.9 rwlock.9 RUN_ONCE.9 STACK.9 \
 	scanc.9 \

Added files:

Index: src/share/man/man9/portfeatures.9
diff -u /dev/null src/share/man/man9/portfeatures.9:1.3.4.2
--- /dev/null	Fri Sep 20 10:27:11 2024
+++ src/share/man/man9/portfeatures.9	Fri Sep 20 10:27:11 2024
@@ -0,0 +1,92 @@
+.\"	$NetBSD: portfeatures.9,v 1.3.4.2 2024/09/20 10:27:11 martin Exp $
+.\"
+.\" Copyright (c) The NetBSD Foundation, Inc.
+.\" 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 ``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 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 March 6, 2023
+.Dt PORTFEATURES 9
+.Os
+.
+.Sh NAME
+.Nm portfeatures
+.Nd the __HAVEs (\|and the have nots\|)
+.
+.Sh DESCRIPTION
+Machine-independent kernel code adapts to differences in hardware
+capabilities provided by the machine-dependent parts of the kernel.
+A port declares its capabilities by defining various
+.Li __HAVE_ Ns Ar feature
+macros.
+This manual page provides an index of such macros with pointers to
+other manual pages in the kernel section that provide all the relevant
+details.
+.Bl -tag -width Dv
+.
+.\" ---------
+.It Dv __HAVE_MUTEX_STUBS Pq Xr mutex 9
+The port provides fast path mutex enter and exit stubs.
+.
+.\" ---------
+.It Dv __HAVE_PREEMPTION Pq Xr cpu_need_resched 9
+The port can preempt kernel lwps with
+.Dv RESCHED_KPREEMPT .
+.
+.\" ---------
+.It Dv __HAVE_PTRACE_MACHDEP
+The port has MD
+.Xr ptrace 2
+requests, defines
+.Dv PTRACE_MACHDEP_REQUEST_CASES
+macro with
+.Ic case
+labels for its MD requests.
+.
+.\" ---------
+.It Dv __HAVE_RAS Pq Xr ras 9
+The port supports restartable atomic sequences.
+.
+.\" ---------
+.It Dv __HAVE_SIMPLE_MUTEXES Pq Xr mutex 9
+The port provides a CAS function that is either MP-safe, or does not
+need to be MP safe.
+Adaptive mutexes on these architectures do not require an additional
+interlock.
+.
+.\" ---------
+.It Dv __HAVE_SPIN_MUTEX_STUBS Pq Xr mutex 9
+The port provides fast path enter and exit stubs for spin mutexes.
+.
+.\" ---------
+.It Dv __HAVE_UCAS_FULL Pq Xr ucas 9
+The port provides a full implementation of the low-level primitives
+required for atomic compare-and-swap operations to user-space addresses.
+.
+.\" ---------
+.It Dv __HAVE_UCAS_MP Pq Xr ucas 9
+The port does not provide a full implementation of the low-level
+primitives required for atomic compare-and-swap operations to user-space
+addresses, but does provide an implementation of those primitives that
+can be used if
+.Pq and only if
+the system has more than one processor.
+.El

Reply via email to