Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 7 Oct 2014 16:08:22 +0000 (UTC)
From:      Andriy Gapon <avg@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r272708 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
Message-ID:  <201410071608.s97G8MVc067343@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: avg
Date: Tue Oct  7 16:08:21 2014
New Revision: 272708
URL: https://svnweb.freebsd.org/changeset/base/272708

Log:
  l2arc_write_buffers: reduce headroom value
  
  FreeBSD has ARC_BUFC_NUMMETADATALISTS metadata lists and ARC_BUFC_NUMDATALISTS
  data lists (currently both are 16) while illumos has just a single list
  of each kind.
  
  headroom determines how much data is scanned on a single list
  during each run of the l2arc feed thread.
  Because FreeBSD has more lists we proportionally decrease the limit.
  
  Reviewed by:	Brendan Gregg (earlier version)
  MFC after:	2 weeks
  Sponsored by:	HybridCluster

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	Tue Oct  7 16:06:10 2014	(r272707)
+++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c	Tue Oct  7 16:08:21 2014	(r272708)
@@ -5047,7 +5047,7 @@ l2arc_write_buffers(spa_t *spa, l2arc_de
 		if (ab == NULL)
 			ARCSTAT_BUMP(arcstat_l2_write_buffer_list_null_iter);
 
-		headroom = target_sz * l2arc_headroom;
+		headroom = target_sz * l2arc_headroom * 2 / ARC_BUFC_NUMLISTS;
 		if (do_headroom_boost)
 			headroom = (headroom * l2arc_headroom_boost) / 100;
 



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