Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 4 Oct 2014 07:34:50 +0000 (UTC)
From:      Xin LI <delphij@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org
Subject:   svn commit: r272496 - vendor-sys/illumos/dist/uts/common/fs/zfs
Message-ID:  <201410040734.s947YoiV084134@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: delphij
Date: Sat Oct  4 07:34:50 2014
New Revision: 272496
URL: https://svnweb.freebsd.org/changeset/base/272496

Log:
  5161 add tunable for number of metaslabs per vdev
  Reviewed by: Alex Reece <alex.reece@delphix.com>
  Reviewed by: Christopher Siden <christopher.siden@delphix.com>
  Reviewed by: George Wilson <george.wilson@delphix.com>
  Reviewed by: Paul Dagnelie <paul.dagnelie@delphix.com>
  Reviewed by: Saso Kiselkov <skiselkov.ml@gmail.com>
  Reviewed by: Richard Elling <richard.elling@gmail.com>
  Approved by: Richard Lowe <richlowe@richlowe.net>
  Author:	Matthew Ahrens <mahrens@delphix.com>
  
  illumos/illumos-gate@bf3e216c7efa56332b456f4cf19d208e21d63839

Modified:
  vendor-sys/illumos/dist/uts/common/fs/zfs/vdev.c

Modified: vendor-sys/illumos/dist/uts/common/fs/zfs/vdev.c
==============================================================================
--- vendor-sys/illumos/dist/uts/common/fs/zfs/vdev.c	Sat Oct  4 07:32:19 2014	(r272495)
+++ vendor-sys/illumos/dist/uts/common/fs/zfs/vdev.c	Sat Oct  4 07:34:50 2014	(r272496)
@@ -65,6 +65,12 @@ static vdev_ops_t *vdev_ops_table[] = {
 int zfs_scrub_limit = 10;
 
 /*
+ * When a vdev is added, it will be divided into approximately (but no
+ * more than) this number of metaslabs.
+ */
+int metaslabs_per_vdev = 200;
+
+/*
  * Given a vdev type, return the appropriate ops vector.
  */
 static vdev_ops_t *
@@ -1551,9 +1557,9 @@ void
 vdev_metaslab_set_size(vdev_t *vd)
 {
 	/*
-	 * Aim for roughly 200 metaslabs per vdev.
+	 * Aim for roughly metaslabs_per_vdev (default 200) metaslabs per vdev.
 	 */
-	vd->vdev_ms_shift = highbit64(vd->vdev_asize / 200);
+	vd->vdev_ms_shift = highbit64(vd->vdev_asize / metaslabs_per_vdev);
 	vd->vdev_ms_shift = MAX(vd->vdev_ms_shift, SPA_MAXBLOCKSHIFT);
 }
 



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