svn commit: r332365 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs

Slawa Olhovchenkov slw at zxy.spb.ru
Tue Apr 10 14:10:01 UTC 2018


On Tue, Apr 10, 2018 at 01:56:06PM +0000, Mark Johnston wrote:

> Author: markj
> Date: Tue Apr 10 13:56:06 2018
> New Revision: 332365
> URL: https://svnweb.freebsd.org/changeset/base/332365
> 
> Log:
>   Set zfs_arc_free_target to v_free_target.
>   
>   Page daemon output is now regulated by a PID controller with a setpoint
>   of v_free_target. Moreover, the page daemon now wakes up regularly
>   rather than waiting for a wakeup from another thread. This means that
>   the free page count is unlikely to drop below the old
>   zfs_arc_free_target value, and as a result the ARC was not readily
>   freeing pages under memory pressure. Address the immediate problem by
>   updating zfs_arc_free_target to match the page daemon's new behaviour.

Can you explain some more about new page daemon algo (and reclaim zone
free memory)?

PS: zfs need some more time for free pages from ARC. Also, vanila zfs
have broken logic for count used and free ARC's memory. For most
correctly count system-wide used and free memory need accounting
in-zone free memory.

>  arc_free_target_init(void *unused __unused)
>  {
>  
> -	zfs_arc_free_target = (vm_cnt.v_free_min / 10) * 11;
> +	zfs_arc_free_target = vm_cnt.v_free_target;
>  }


More information about the svn-src-head mailing list