summaryrefslogtreecommitdiffstats
path: root/module/zfs/zfeature.c
diff options
context:
space:
mode:
authorChristopher Siden <[email protected]>2012-12-14 15:00:45 -0800
committerBrian Behlendorf <[email protected]>2013-01-08 10:35:43 -0800
commitb9b24bb4ca45f2d903efadba44d10dfd182f62ac (patch)
tree66851e088971be7fbeed9f938227caf5295216b8 /module/zfs/zfeature.c
parent3bc7e0fb0f3904eaf41e0b9768ebe2d042ae98aa (diff)
Illumos #2762: zpool command should have better support for feature flags
2762 zpool command should have better support for feature flags Reviewed by: Matthew Ahrens <[email protected]> Reviewed by: George Wilson <[email protected]> Approved by: Eric Schrock <[email protected]> References: illumos/illumos-gate@57221772c3fc05faba04bf48ddff45abf2bbf2bd https://www.illumos.org/issues/2762 Ported-by: Brian Behlendorf <[email protected]>
Diffstat (limited to 'module/zfs/zfeature.c')
-rw-r--r--module/zfs/zfeature.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/module/zfs/zfeature.c b/module/zfs/zfeature.c
index de9d165a9..24ff18fc3 100644
--- a/module/zfs/zfeature.c
+++ b/module/zfs/zfeature.c
@@ -173,7 +173,7 @@ typedef enum {
*/
boolean_t
feature_is_supported(objset_t *os, uint64_t obj, uint64_t desc_obj,
- nvlist_t *unsup_feat)
+ nvlist_t *unsup_feat, nvlist_t *enabled_feat)
{
boolean_t supported;
zap_cursor_t *zc;
@@ -191,11 +191,16 @@ feature_is_supported(objset_t *os, uint64_t obj, uint64_t desc_obj,
ASSERT(za->za_integer_length == sizeof (uint64_t) &&
za->za_num_integers == 1);
+ if (NULL != enabled_feat) {
+ fnvlist_add_uint64(enabled_feat, za->za_name,
+ za->za_first_integer);
+ }
+
if (za->za_first_integer != 0 &&
!zfeature_is_supported(za->za_name)) {
supported = B_FALSE;
- if (unsup_feat != NULL) {
+ if (NULL != unsup_feat) {
char *desc = "";
if (zap_lookup(os, desc_obj, za->za_name,