svn commit: r303082 - vendor/illumos/dist/cmd/zdb

Andriy Gapon avg at FreeBSD.org
Wed Jul 20 09:57:17 UTC 2016


Author: avg
Date: Wed Jul 20 09:57:16 2016
New Revision: 303082
URL: https://svnweb.freebsd.org/changeset/base/303082

Log:
  6391 Override default SPA config location via environment
  
  illumos/illumos-gate at ae24175b2b25e9fb4bfd9ac0648b57e0735b6651
  https://github.com/illumos/illumos-gate/commit/ae24175b2b25e9fb4bfd9ac0648b57e0735b6651
  
  https://www.illumos.org/issues/6391
    When using zdb with non-default SPA config file it is not convenient
    to add -U <non-default-config-file-path> all the time. This commit
    introduces support for setting/overriding SPA config location via
    environment variable 'SPA_CONFIG_PATH'.
    If -U flag is specified in the command line it will override any other
    value as usual.
  
  https://github.com/zfsonlinux/zfs/commit/64d7b6cf75e52a4698d9bdec61745573c39d2e5a
  
  Reviewed by: Brian Behlendorf <behlendorf1 at llnl.gov>
  Reviewed by: Richard Yao <ryao at gentoo.org>
  Reviewed by: Matthew Ahrens <mahrens at delphix.com>
  Reviewed by: Will Andrews <will at freebsd.org>
  Reviewed by: George Wilson <george.wilson at delphix.com>
  Approved by: Robert Mustacchi <rm at joyent.com>
  Author: Cyril Plisko <cyril.plisko at mountall.com>

Modified:
  vendor/illumos/dist/cmd/zdb/zdb.c

Modified: vendor/illumos/dist/cmd/zdb/zdb.c
==============================================================================
--- vendor/illumos/dist/cmd/zdb/zdb.c	Wed Jul 20 09:54:18 2016	(r303081)
+++ vendor/illumos/dist/cmd/zdb/zdb.c	Wed Jul 20 09:57:16 2016	(r303082)
@@ -3529,12 +3529,22 @@ main(int argc, char **argv)
 	nvlist_t *policy = NULL;
 	uint64_t max_txg = UINT64_MAX;
 	int rewind = ZPOOL_NEVER_REWIND;
+	char *spa_config_path_env;
 
 	(void) setrlimit(RLIMIT_NOFILE, &rl);
 	(void) enable_extended_FILE_stdio(-1, -1);
 
 	dprintf_setup(&argc, argv);
 
+	/*
+	 * If there is an environment variable SPA_CONFIG_PATH it overrides
+	 * default spa_config_path setting. If -U flag is specified it will
+	 * override this environment variable settings once again.
+	 */
+	spa_config_path_env = getenv("SPA_CONFIG_PATH");
+	if (spa_config_path_env != NULL)
+		spa_config_path = spa_config_path_env;
+
 	while ((c = getopt(argc, argv,
 	    "bcdhilmMI:suCDRSAFLXx:evp:t:U:P")) != -1) {
 		switch (c) {


More information about the svn-src-vendor mailing list