svn commit: r348737 - head/sys/kern

Alan Somers asomers at freebsd.org
Thu Jun 6 18:05:06 UTC 2019


On Thu, Jun 6, 2019 at 12:01 PM John Baldwin <jhb at freebsd.org> wrote:
>
> On 6/6/19 10:39 AM, Alan Somers wrote:
> > On Thu, Jun 6, 2019 at 11:35 AM Rodney W. Grimes
> > <freebsd at gndrsh.dnsmgr.net> wrote:
> >>
> >>> Author: asomers
> >>> Date: Thu Jun  6 15:04:50 2019
> >>> New Revision: 348737
> >>> URL: https://svnweb.freebsd.org/changeset/base/348737
> >>>
> >>> Log:
> >>>   Add a testing facility to manually reclaim a vnode
> >>>
> >>>   Add the debug.try_reclaim_vnode sysctl. When a pathname is written to it, it
> >>>   will be reclaimed, as long as it isn't already or doomed. The purpose is to
> >>>   gain test coverage for vnode reclamation, which is otherwise hard to
> >>>   achieve.
> >>>
> >>>   Add the debug.ftry_reclaim_vnode sysctl.  It does the same thing, except
> >>>   that its argument is a file descriptor instead of a pathname.
> >>
> >> Should not this all be wrapped in some #ifdef or other protection,
> >> is it really a good idea to have this on every single box running
> >> FreeBSD?
> >
> > I initially thought so too, but kib thought that it could be useful
> > for debugging problems in the field.  The potential downside is
> > limited, because only root can write to the sysctls, and the
> > worse-case damage is similar to a "umount -f".
>
> A compromise might be to stick this in a kernel module instead of in the
> base kernel.  You could still kldload it in the field for debugging but
> not necessarily have it directly available out of the box.
>
> --
> John Baldwin

If we already had such a module, it would make sense to put these
sysctls in there.  But I don't want to create an entire module for
just a few dozen LOC.  Nor do I want to mediate a bike shed.  So let's
vote.  kib already registered a vote for making them available all of
the time.  rgrimes voted to guard them by INVARIANTS.  Anybody else
who cares can reply to this thread.  I'll count the votes in 24 hours.
-Alan


More information about the svn-src-head mailing list