Re: git: 906c312bbf74 - main - Document the mntopts(3) functions.

From: Konstantin Belousov <kostikbel_at_gmail.com>
Date: Fri, 27 Jan 2023 14:34:30 UTC
On Fri, Jan 27, 2023 at 02:26:51PM +0000, Bjoern A. Zeeb wrote:
> On Fri, 27 Jan 2023, Bjoern A. Zeeb wrote:
> 
> > On Sun, 15 Jan 2023, Kirk McKusick wrote:
> > 
> > Hi Kirk,
> > 
> > > The branch main has been updated by mckusick:
> > > 
> > > URL: https://cgit.FreeBSD.org/src/commit/?id=906c312bbf7493ccbcce883936d67e5c66a9c3c2
> > > 
> > > commit 906c312bbf7493ccbcce883936d67e5c66a9c3c2
> > > Author:     Kirk McKusick <mckusick@FreeBSD.org>
> > > AuthorDate: 2023-01-15 18:20:48 +0000
> > > Commit:     Kirk McKusick <mckusick@FreeBSD.org>
> > > CommitDate: 2023-01-15 18:21:31 +0000
> > > 
> > >    Document the mntopts(3) functions.
> > > 
> > >    The mntopts(3) functions support operations associated with a mount
> > >    point. The main purpose of this commit is to document the mntopts(3)
> > >    functions that now appear in 18 utilities in the base system. See
> > >    mntopts(3) for the documentation details.
> > > 
> > >    The getmntopts() function appeared in 4.4BSD. The build_iovec(),
> > >    build_iovec_argf(), free_iovec(), checkpath(), and rmslashes()
> > >    functions were added with nmount(8) in FreeBSD 5.0. The getmntpoint()
> > >    and chkdoreload() functions are being added in this commit.
> > > 
> > >    These functions should be in a library but for historic reasons are
> > >    in a file in the sources for the mount(8) program. Thus, to access
> > >    them the following lines need to be added to the Makefile of the
> > >    program wanting to use them:
> > > 
> > >    SRCS+= getmntopts.c
> > >    MOUNT= ${SRCTOP}/sbin/mount
> > >    CFLAGS+= -I${MOUNT}
> > >    .PATH: ${MOUNT}
> > > 
> > >    Once these changes have been MFC'ed to 13 they may be made into
> > >    a library.
> > > 
> > >    Reviewed by:  kib, gbe
> > >    MFC after:    2 weeks
> > >    Sponsored by: The FreeBSD Foundation
> > >    Differential Revision: https://reviews.freebsd.org/D37907
> > 
> > 
> > Could this change be the cause for (I'll try to back it out and the
> > follow-up to see but it'll be a few hours...)
> 
>     This reverts commit 0bd4c448ec1dfdc2300a6cacca42e1fc7c4d8f14.
>     This reverts commit 906c312bbf7493ccbcce883936d67e5c66a9c3c2.
> 
> And NFS ROOT works again.
> 
> Please don't MFC until this is fixed.
This is really strange, since the changes are purely user-space.
You cannot get to that before root is mounted.

> 
> PS: I am also always surprised how little netboot setup breakage shows
> up these days (or how long it takes to be reported).  We probably need
> better test cases for this...
> 
> 
> > https://lists.freebsd.org/archives/freebsd-fs/2023-January/001789.html
> > 
> > 
> > > ---
> > > sbin/fsck/Makefile      |   4 +
> > > sbin/fsck/fsck.c        |   5 +-
> > > sbin/fsck/fsutil.c      |  44 ------
> > > sbin/fsck/fsutil.h      |   1 -
> > > sbin/fsck_ffs/main.c    |  96 +-----------
> > > sbin/growfs/growfs.c    | 110 ++------------
> > > sbin/mount/Makefile     |  11 +-
> > > sbin/mount/getmntopts.3 | 181 -----------------------
> > > sbin/mount/getmntopts.c |  95 +++++++++++-
> > > sbin/mount/mntopts.3    | 381
> > > ++++++++++++++++++++++++++++++++++++++++++++++++
> > > sbin/mount/mntopts.h    |   2 +
> > > sbin/mount/mount.c      |  18 +--
> > > sbin/tunefs/tunefs.c    |  33 +----
> > > 13 files changed, 513 insertions(+), 468 deletions(-)
> > 
> > 
> 
> -- 
> Bjoern A. Zeeb                                                     r15:7