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

Steven Hartland smh at FreeBSD.org
Wed Jul 6 23:49:21 UTC 2016


Author: smh
Date: Wed Jul  6 23:49:19 2016
New Revision: 302382
URL: https://svnweb.freebsd.org/changeset/base/302382

Log:
  Fix ZFS ARC min / max tunable
  
  Due to ARC initial configuration not being done and kmem information
  not being available we need to blindly set zfs_arc_max and zfs_arc_min
  when configured via the tunable.
  
  This fixes vfs.zfs.arc_(min|max) configuration via loader.conf broken by
  r302265.
  
  Approved by:	re(gjb)
  MFC after:	1 week

Modified:
  head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c

Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c
==============================================================================
--- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c	Wed Jul  6 22:21:22 2016	(r302381)
+++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c	Wed Jul  6 23:49:19 2016	(r302382)
@@ -919,6 +919,12 @@ sysctl_vfs_zfs_arc_max(SYSCTL_HANDLER_AR
 	if (err != 0 || req->newptr == NULL)
 		return (err);
 
+	if (zfs_arc_max == 0) {
+		/* Loader tunable so blindly set */
+		zfs_arc_max = val;
+		return (0);
+	}
+
 	if (val < arc_abs_min || val > kmem_size())
 		return (EINVAL);
 	if (val < arc_c_min)
@@ -956,6 +962,12 @@ sysctl_vfs_zfs_arc_min(SYSCTL_HANDLER_AR
 	if (err != 0 || req->newptr == NULL)
 		return (err);
 
+	if (zfs_arc_min == 0) {
+		/* Loader tunable so blindly set */
+		zfs_arc_min = val;
+		return (0);
+	}
+
 	if (val < arc_abs_min || val > arc_c_max)
 		return (EINVAL);
 


More information about the svn-src-head mailing list