git: 52f9a2823c64 - main - rtalloc.9: remove obsolete man page

From: Mitchell Horne <mhorne_at_FreeBSD.org>
Date: Fri, 27 Jan 2023 22:02:24 UTC
The branch main has been updated by mhorne:

URL: https://cgit.FreeBSD.org/src/commit/?id=52f9a2823c64650c773dadf2d47c451e985f8389

commit 52f9a2823c64650c773dadf2d47c451e985f8389
Author:     Mitchell Horne <mhorne@FreeBSD.org>
AuthorDate: 2023-01-27 22:00:07 +0000
Commit:     Mitchell Horne <mhorne@FreeBSD.org>
CommitDate: 2023-01-27 22:01:47 +0000

    rtalloc.9: remove obsolete man page
    
    This KPI was removed in d22337254564. Note that there are a handful of
    references remaining in the src tree to these rtalloc functions that
    could be cleaned up by someone with more domain knowledge.
    
    Reviewed by:    pauamma (manpages), glebius, melifaro
    Sponsored by:   The FreeBSD Foundation
    Differential Revision:  https://reviews.freebsd.org/D38188
---
 ObsoleteFiles.inc        |   3 +
 share/man/man9/Makefile  |  14 ---
 share/man/man9/rtalloc.9 | 282 -----------------------------------------------
 share/man/man9/rtentry.9 |   1 -
 4 files changed, 3 insertions(+), 297 deletions(-)

diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc
index e51f0b50f713..bf96963c3e73 100644
--- a/ObsoleteFiles.inc
+++ b/ObsoleteFiles.inc
@@ -52,6 +52,9 @@
 #   xargs -n1 | sort | uniq -d;
 # done
 
+# 20230124: rtalloc.9 removed
+OLD_FILES+=usr/share/man/man9/rtalloc.9.gz
+
 # 20230123: PCBGROUP.9 removed
 OLD_FILES+=usr/share/man/man9/PCBGROUP.9.gz
 
diff --git a/share/man/man9/Makefile b/share/man/man9/Makefile
index e6c4c8f7886b..d7d5b10f13d5 100644
--- a/share/man/man9/Makefile
+++ b/share/man/man9/Makefile
@@ -302,7 +302,6 @@ MAN=	accept_filter.9 \
 	rijndael.9 \
 	rman.9 \
 	rmlock.9 \
-	rtalloc.9 \
 	rtentry.9 \
 	runqueue.9 \
 	rwlock.9 \
@@ -1879,19 +1878,6 @@ MLINKS+=rmlock.9 rm_assert.9 \
 	rmlock.9 rm_wlock.9 \
 	rmlock.9 rm_wowned.9 \
 	rmlock.9 rm_wunlock.9
-MLINKS+=rtalloc.9 rtalloc1.9 \
-	rtalloc.9 rtalloc_ign.9 \
-	rtalloc.9 RT_ADDREF.9 \
-	rtalloc.9 RT_LOCK.9 \
-	rtalloc.9 RT_REMREF.9 \
-	rtalloc.9 RT_RTFREE.9 \
-	rtalloc.9 RT_UNLOCK.9 \
-	rtalloc.9 RTFREE_LOCKED.9 \
-	rtalloc.9 RTFREE.9 \
-	rtalloc.9 rtfree.9 \
-	rtalloc.9 rtalloc1_fib.9 \
-	rtalloc.9 rtalloc_ign_fib.9 \
-	rtalloc.9 rtalloc_fib.9
 MLINKS+=runqueue.9 choosethread.9 \
 	runqueue.9 procrunnable.9 \
 	runqueue.9 remrunqueue.9 \
diff --git a/share/man/man9/rtalloc.9 b/share/man/man9/rtalloc.9
deleted file mode 100644
index ea22f8717d4a..000000000000
--- a/share/man/man9/rtalloc.9
+++ /dev/null
@@ -1,282 +0,0 @@
-.\"
-.\" Copyright 1996 Massachusetts Institute of Technology
-.\"
-.\" Permission to use, copy, modify, and distribute this software and
-.\" its documentation for any purpose and without fee is hereby
-.\" granted, provided that both the above copyright notice and this
-.\" permission notice appear in all copies, that both the above
-.\" copyright notice and this permission notice appear in all
-.\" supporting documentation, and that the name of M.I.T. not be used
-.\" in advertising or publicity pertaining to distribution of the
-.\" software without specific, written prior permission.  M.I.T. makes
-.\" no representations about the suitability of this software for any
-.\" purpose.  It is provided "as is" without express or implied
-.\" warranty.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY M.I.T. ``AS IS''.  M.I.T. DISCLAIMS
-.\" ALL EXPRESS OR IMPLIED WARRANTIES WITH REGARD TO THIS SOFTWARE,
-.\" INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-.\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT
-.\" SHALL M.I.T. 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.
-.\"
-.\" $FreeBSD$
-.\"
-.Dd July 4, 2012
-.Dt RTALLOC 9
-.Os
-.Sh NAME
-.Nm rtalloc1_fib ,
-.Nm rtalloc_ign_fib ,
-.Nm rtalloc_fib
-.Nd look up a route in the kernel routing table
-.Sh SYNOPSIS
-.In sys/types.h
-.In sys/socket.h
-.In net/route.h
-.Ft "struct rtentry *"
-.Fn rtalloc1_fib "struct sockaddr *dst" "int report" "u_long flags" "u_int fibnum"
-.Ft void
-.Fn rtalloc_fib "struct route *ro" "u_int fibnum"
-.Ft void
-.Fn rtalloc_ign_fib "struct route *ro" "u_long flags" "u_int fibnum"
-.Fn RTFREE_LOCKED "struct rt_entry *rt"
-.Fn RTFREE "struct rt_entry *rt"
-.Fn RT_LOCK "struct rt_entry *rt"
-.Fn RT_UNLOCK "struct rt_entry *rt"
-.Fn RT_ADDREF "struct rt_entry *rt"
-.Fn RT_REMREF "struct rt_entry *rt"
-.Fn RO_RTFREE "struct route *ro"
-.Ft void
-.Fn rtfree "struct rt_entry *rt"
-.Ft "struct rtentry *"
-.Fn rtalloc1 "struct sockaddr *dst" "int report" "u_long flags"
-.Ft void
-.Fn rtalloc "struct route *ro"
-.Ft void
-.Fn rtalloc_ign "struct route *ro" "u_long flags"
-.Pp
-.Cd options RADIX_MPATH
-.Sh DESCRIPTION
-The kernel uses a radix tree structure to manage routes for the
-networking subsystem.
-If compiled with
-.Cd options RADIX_MPATH
-kernel may maintain several independent forwarding information databases (FIBs).
-The
-.Fn rtalloc
-family of routines is used by protocols to query these structures for a
-route corresponding to a particular end-node address, and to cause
-certain protocol\- and interface-specific actions to take place.
-.Pp
-The
-.Fn rtalloc1_fib
-function is the most general form of
-.Fn rtalloc ,
-and all of the other forms are implemented as calls to it.
-It takes a
-.Fa "struct sockaddr *"
-directly as the
-.Fa dst
-argument.
-The second argument,
-.Fa report ,
-controls whether the routing sockets are notified when a lookup fails.
-The third argument,
-.Fa flags ,
-is a combination of
-the following values:
-.Bl -item -offset indent
-.It
-.Dv RTF_RNH_LOCKED
-indicates that the radix tree lock is already held
-.El
-.Pp
-The last argument
-.Fa fibnum
-specifies number of forwarding information database (FIB) on which
-the lookup should be performed.
-In case of success the
-.Fn rtalloc1_fib
-function returns a pointer to a locked
-.Vt "struct rtentry"
-with an additional reference.
-.Pp
-The
-.Fn rtalloc_fib
-is the most simple variant.
-Its main argument is
-.Fa ro ,
-a pointer to a
-.Fa "struct route" ,
-which is defined as follows:
-.Bd -literal -offset indent
-struct route {
-	struct rtentry *ro_rt;
-	struct llentry *ro_lle;
-	struct sockaddr ro_dst;
-};
-.Ed
-.Pp
-Thus, this function can only be used for address families which are
-smaller than the default
-.Ft "struct sockaddr" .
-Before calling
-.Fn rtalloc_fib
-for the first time, callers should ensure that unused bits of the
-structure are set to zero.
-The second argument
-.Fa fibnum
-is FIB number.
-In case of success of the
-.Fn rtalloc_fib
-the
-.Fa ro_rt
-points to a valid and unlocked
-.Xr rtentry 9 ,
-which has an additional reference put on it, freeing which is
-responsibility of the caller.
-On subsequent calls,
-.Fn rtalloc_fib
-returns without performing a lookup if
-.Fa ro->ro_rt
-is non-null and the
-.Dv RTF_UP
-flag is set in the rtentry's
-.Fa rt_flags
-field.
-.Pp
-The
-.Fn rtalloc_ign_fib
-function is the same as the
-.Fn rtalloc_fib ,
-but there is additional
-.Fa flags
-argument, which is same as in
-.Fn rtalloc1_fib .
-.Pp
-The
-.Fn RTFREE_LOCKED
-macro is used to unref and possibly free a locked routing entry
-with one our reference, for example previously allocated by
-.Fn rtalloc1_fib .
-.Pp
-The
-.Fn RTFREE
-macro is used to unref and possibly free an unlocked route entries with
-one our reference, for example previously allocated by
-.Fn rtalloc_fib
-or
-.Fn rtalloc_ign_fib .
-.Pp
-Both
-.Fn RTFREE_LOCKED
-and
-.Fn RTFREE
-macros decrement the reference count on the routing table entry,
-and proceed with actual freeing if the reference count has reached zero.
-.Pp
-The
-.Fn RT_LOCK
-macro is used to lock a routing table entry.
-.Pp
-The
-.Fn RT_UNLOCK
-macro is used to unlock a routing table entry.
-.Pp
-The
-.Fn RT_ADDREF
-macro increments the reference count on a previously locked route entry.
-It should be used whenever a reference to an
-.Xr rtentry 9
-is going to be stored outside the routing table.
-.Pp
-The
-.Fn RT_REMREF
-macro decrements the reference count on a previously locked route entry.
-Its usage is contrary to
-.Fn RT_ADDREF .
-.Pp
-The
-.Fn RO_RTFREE
-macro is used to free route entry that is referenced by struct route.
-At certain circumstances the latter may not hold a reference on rtentry,
-and
-.Fn RO_RTFREE
-treats such routes correctly.
-.Pp
-The
-.Fn rtfree
-function does the actual free of the routing table entry, and shouldn't
-be called directly by facilities, that just perform routing table lookups.
-.Sh LEGACY INTERFACE
-Prior to introduction of multiple routing tables functions did not
-require the
-.Fa "u_int fibnum"
-argument.
-Legacy
-.Fn rtalloc1 ,
-.Fn rtalloc
-and
-.Fn rtalloc_ign
-functions are kept for compatibility, and are equivalent to
-calling new interface with
-.Fa fibnum
-argument equal to
-.Va 0 ,
-which implies default forwarding table.
-.Sh RETURN VALUES
-The
-.Fn rtalloc1_fib
-function returns a pointer to a locked routing-table entry if it succeeds,
-otherwise a null pointer.
-The
-.Fn rtalloc_fib
-and
-.Fn rtalloc_ign_fib
-functions do not return a value, but they fill in the
-.Fa *ro_rt
-member of the
-.Fa *ro
-argument with a pointer to an unlocked routing-table entry if they
-succeed, otherwise a null pointer.
-In a case of success all functions put a reference on the
-routing-table entry, freeing of which is responsibility of the caller.
-Lack of a route should in most cases be
-translated to the
-.Xr errno 2
-value
-.Er EHOSTUNREACH .
-.Sh SEE ALSO
-.Xr route 4 ,
-.Xr rtentry 9
-.Sh HISTORY
-The
-.Nm rtalloc
-facility first appeared in
-.Bx 4.2 ,
-although with much different internals.
-The
-.Fn rtalloc_ign
-function and the
-.Fa flags
-argument to
-.Fn rtalloc1
-first appeared in
-.Fx 2.0 .
-Routing table locking was introduced in
-.Fx 5.2 .
-Multiple routing tables were introduced in
-.Fx 8.0 .
-.Sh AUTHORS
-The original version of this manual page was written by
-.An -nosplit
-.An "Garrett Wollman" .
-It was significantly updated by
-.An "Gleb Smirnoff" .
diff --git a/share/man/man9/rtentry.9 b/share/man/man9/rtentry.9
index 65a63e481c4b..35ff59eb8433 100644
--- a/share/man/man9/rtentry.9
+++ b/share/man/man9/rtentry.9
@@ -230,7 +230,6 @@ Empty space available for protocol-specific information.
 .Sh SEE ALSO
 .Xr route 4 ,
 .Xr route 8 ,
-.Xr rtalloc 9
 .Sh HISTORY
 The
 .Vt rtentry