diff options
author | Christopher Siden <chris.siden@delphix.com> | 2012-05-21 12:11:39 -0700 |
---|---|---|
committer | Christopher Siden <chris.siden@delphix.com> | 2012-05-21 12:11:39 -0700 |
commit | ad135b5d644628e791c3188a6ecbd9c257961ef8 (patch) | |
tree | f512d6987edc7d3ae208f050b4d6e1440c40186c /usr/src/uts/common/fs/zfs/spa_config.c | |
parent | dded0839cf719e5b347c41adf4fa9debf68d02d9 (diff) | |
download | illumos-gate-ad135b5d644628e791c3188a6ecbd9c257961ef8.tar.gz |
2619 asynchronous destruction of ZFS file systems
2747 SPA versioning with zfs feature flags
Reviewed by: Matt Ahrens <mahrens@delphix.com>
Reviewed by: George Wilson <gwilson@delphix.com>
Reviewed by: Richard Lowe <richlowe@richlowe.net>
Reviewed by: Dan Kruchinin <dan.kruchinin@gmail.com>
Approved by: Eric Schrock <Eric.Schrock@delphix.com>
Diffstat (limited to 'usr/src/uts/common/fs/zfs/spa_config.c')
-rw-r--r-- | usr/src/uts/common/fs/zfs/spa_config.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/usr/src/uts/common/fs/zfs/spa_config.c b/usr/src/uts/common/fs/zfs/spa_config.c index 8ca195d244..366545035d 100644 --- a/usr/src/uts/common/fs/zfs/spa_config.c +++ b/usr/src/uts/common/fs/zfs/spa_config.c @@ -22,7 +22,7 @@ /* * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. * Copyright 2011 Nexenta Systems, Inc. All rights reserved. - * Copyright (c) 2011 by Delphix. All rights reserved. + * Copyright (c) 2012 by Delphix. All rights reserved. */ #include <sys/spa.h> @@ -35,6 +35,7 @@ #include <sys/utsname.h> #include <sys/systeminfo.h> #include <sys/sunddi.h> +#include <sys/zfeature.h> #ifdef _KERNEL #include <sys/kobj.h> #include <sys/zone.h> @@ -409,6 +410,12 @@ spa_config_generate(spa_t *spa, vdev_t *vd, uint64_t txg, int getstats) VERIFY(nvlist_add_nvlist(config, ZPOOL_CONFIG_VDEV_TREE, nvroot) == 0); nvlist_free(nvroot); + /* + * Store what's necessary for reading the MOS in the label. + */ + VERIFY(nvlist_add_nvlist(config, ZPOOL_CONFIG_FEATURES_FOR_READ, + spa->spa_label_features) == 0); + if (getstats && spa_load_state(spa) == SPA_LOAD_NONE) { ddt_histogram_t *ddh; ddt_stat_t *dds; |