svn commit: r309658 - head/sys/vm

John Baldwin jhb at freebsd.org
Thu Dec 8 15:54:47 UTC 2016


On Wednesday, December 07, 2016 02:15:49 PM Mark Johnston wrote:
> On Wed, Dec 07, 2016 at 01:26:47PM -0800, Gleb Smirnoff 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.
> 
> The intent was to improve compatibility with old userlands, not just to
> help bridge the transition from 11.0 to 12.0. In general I'm all for
> removing cruft, but these sysctls are unobtrusive and I don't see any
> reason to remove them in a specific time frame provided that nothing
> else breaks compatibility for top(1) (and vmstat(8)). Please feel free
> to add a timeout if you still disagree, though.

I would suggest sticking them under COMPAT_FREEBSD11 then.  That would give
users control via the COMPAT_FREEBSD<x> options the way we do with other
compat shims.  The only nit is you need to add the COMPAT_FREEBSD11 option
first (probably in a separate commit).

-- 
John Baldwin


More information about the svn-src-all mailing list