Re: What happen with vm.v_* on stable?

From: Mark Millard <marklmi_at_yahoo.com>
Date: Sat, 08 Mar 2025 22:47:35 UTC
On Mar 8, 2025, at 14:22, Mark Millard <marklmi@yahoo.com> wrote:

> Rozhuk Ivan <rozhuk.im_at_gmail.com> wrote on
> Date: Sat, 08 Mar 2025 17:14:16 UTC :
>> 
>> "vm.v_free_min", "vm.v_free_reserved", and "vm.v_free_target" sysctls describeb in i386 notes and some FBSD docs.
>> I try to tune it - see no effects.
>> I look into code of 14/STABLE and fail to find code that read these values.
> 
> I see reads of vm_cnt.v_free_min and vm_cnt.v_free_target and m_cnt.v_free_reserved :
> 
> # grep -r -e "\<v_free_" -e VM_V_FREE_ -e "\<minfree\>" /usr/src/sys/ | more
> . . .
> /usr/src/sys/contrib/openzfs/include/os/freebsd/spl/sys/kmem.h:#define  minfree                         vm_cnt.v_free_min
> /usr/src/sys/contrib/openzfs/module/os/freebsd/zfs/arc_os.c:    zfs_arc_free_target = vm_cnt.v_free_target;
> /usr/src/sys/contrib/openzfs/module/os/freebsd/zfs/sysctl_os.c: if (val < minfree)
> . . .
> /usr/src/sys/vm/swap_pager.c:           s += vm_cnt.v_page_count - vm_cnt.v_free_reserved -
> . . .
> /usr/src/sys/vm/vm_pageout.c:           vm_cnt.v_free_reserved += vmd->vmd_free_reserved;
> /usr/src/sys/vm/vm_pageout.c:           vm_cnt.v_free_target += vmd->vmd_free_target;
> /usr/src/sys/vm/vm_pageout.c:           vm_cnt.v_free_min += vmd->vmd_free_min;
> /usr/src/sys/vm/vm_pageout.c:           vm_cnt.v_free_severe += vmd->vmd_free_severe;

I'll note that the += vmd->vmd_free_... figures are for a memory
domain, of which NUMA would means there is more than 1 domain in
the system.

> I see the same in both my main and my stable/14 source trees.
> 
>> It seems it only show some initial on boot values and do nothink while OS work.
> 
> See above. I've  not analyzed the code involved, however.
> 
>> Is some commits not backported from main to stable or it some refactor artefacts?


===
Mark Millard
marklmi at yahoo.com


===
Mark Millard
marklmi at yahoo.com