Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 8 Dec 2016 13:07:06 +1100 (EST)
From:      Bruce Evans <brde@optusnet.com.au>
To:        Warner Losh <imp@bsdimp.com>
Cc:        Gleb Smirnoff <glebius@freebsd.org>, Mark Johnston <markj@freebsd.org>,  src-committers <src-committers@freebsd.org>,  "svn-src-all@freebsd.org" <svn-src-all@freebsd.org>,  "svn-src-head@freebsd.org" <svn-src-head@freebsd.org>
Subject:   Re: svn commit: r309658 - head/sys/vm
Message-ID:  <20161208123844.B935@besplex.bde.org>
In-Reply-To: <CANCZdfonWLwGnJWZ74r1mvQ5mA0_jEzQUAd0TsKvycsmHQ2seg@mail.gmail.com>
References:  <201612062252.uB6Mqjhr019191@repo.freebsd.org> <20161207212647.GO27748@FreeBSD.org> <CANCZdfonWLwGnJWZ74r1mvQ5mA0_jEzQUAd0TsKvycsmHQ2seg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 7 Dec 2016, Warner Losh wrote:

> On Wed, Dec 7, 2016 at 2:26 PM, Gleb Smirnoff <glebius@freebsd.org> wrote:
>> On Tue, Dec 06, 2016 at 10:52:45PM +0000, Mark Johnston wrote:
>> M> Author: markj
>> M> Date: Tue Dec  6 22:52:45 2016
>> M> New Revision: 309658
>> M> URL: https://svnweb.freebsd.org/changeset/base/309658
>> M>
>> M> Log:
>> M>   Provide dummy sysctls for v_cache_count and v_tcached.
>> M>
>> M>   Some utilities (notably top(1)) exit if any of their input sysctls don't
>> M>   exist, and the removal of the above-mentioned PG_CACHE-related sysctls
>> M>   makes it difficult to run such utilities on different versions of the
>> M>   kernel without recompiling.
>> M>
>> M>   Requested by:      bde
>> M>
>> M> Modified:
>> M>   head/sys/vm/vm_meter.c
>> M>
>> M> Modified: head/sys/vm/vm_meter.c
>> M> ==============================================================================
>> M> --- head/sys/vm/vm_meter.c   Tue Dec  6 22:48:28 2016        (r309657)
>> M> +++ head/sys/vm/vm_meter.c   Tue Dec  6 22:52:45 2016        (r309658)
>> M> @@ -314,3 +314,14 @@ VM_STATS_VM(v_forkpages, "VM pages affec
>> M>  VM_STATS_VM(v_vforkpages, "VM pages affected by vfork()");
>> M>  VM_STATS_VM(v_rforkpages, "VM pages affected by rfork()");
>> M>  VM_STATS_VM(v_kthreadpages, "VM pages affected by fork() by kernel");
>> M> +
>> M> +#ifndef BURN_BRIDGES
>> M> +/*
>> M> + * Provide compatibility sysctls for the benefit of old utilities which exit
>> M> + * with an error if they cannot be found.
>> M> + */
>> M> +SYSCTL_UINT(_vm_stats_vm, OID_AUTO, v_cache_count, CTLFLAG_RD,
>> M> +    (u_int *)NULL, 0, "Dummy for compatibility");
>> M> +SYSCTL_UINT(_vm_stats_vm, OID_AUTO, v_tcached, CTLFLAG_RD,
>> M> +    (u_int *)NULL, 0, "Dummy for compatibility");
>> M> +#endif
>>
>> IMHO, there should be some garbage collecting timeout for them. I'd suggest to
>> delete them from head after stable/12 branch is forked.
>
> Other places define #if BURN_BRUDGES < 1200000 to make this automatic.

The correct ifdef is something like '#if COMPAT_FREEBSD12' to make this
non-automatic.  Support for this option should of course be removed some
time after the support for COMPAT_43 option.  That is only 25-30 years old.

FreeBSD never imported the rather large COMPAT_42 support from 4.4BSD-Lite
(except for TCP_COMPAT_42) since it never supported the arches that needed
it, but it still had 1 COMPAT_42 ifdef in udp_usrreq.c until 2002.  That
ifdef was garbage since the option was not supported (not in conf/options).
It was for a sysctl too, but less needed since it was only for the default
value.

Bruce



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20161208123844.B935>