diff options
author | Paul Dagnelie <[email protected]> | 2018-10-16 11:15:04 -0700 |
---|---|---|
committer | Matthew Ahrens <[email protected]> | 2018-10-16 11:15:04 -0700 |
commit | d52d80b700229e879fe757c989c3bcd3a3a42f2a (patch) | |
tree | baa4fde58282a0a23eb038f163e1a6505fe60665 /module/zfs/dnode_sync.c | |
parent | 779a6c0bf6df76e0dd92c1ccf81f48512b835bb0 (diff) |
Add types to featureflags in zfs
The boolean featureflags in use thus far in ZFS are extremely useful,
but because they take advantage of the zap layer, more interesting data
than just a true/false value can be stored in a featureflag. In redacted
send/receive, this is used to store the list of redaction snapshots for
a redacted dataset.
This change adds the ability for ZFS to store types other than a boolean
in a featureflag. The only other implemented type is a uint64_t array.
It also modifies the interfaces around dataset features to accomodate
the new capabilities, and adds a few new functions to increase
encapsulation.
This functionality will be used by the Redacted Send/Receive feature.
Reviewed-by: Matthew Ahrens <[email protected]>
Reviewed-by: Brian Behlendorf <[email protected]>
Signed-off-by: Paul Dagnelie <[email protected]>
Closes #7981
Diffstat (limited to 'module/zfs/dnode_sync.c')
-rw-r--r-- | module/zfs/dnode_sync.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/module/zfs/dnode_sync.c b/module/zfs/dnode_sync.c index e42f337ed..c4062beb3 100644 --- a/module/zfs/dnode_sync.c +++ b/module/zfs/dnode_sync.c @@ -753,8 +753,8 @@ dnode_sync(dnode_t *dn, dmu_tx_t *tx) if (dn->dn_num_slots > DNODE_MIN_SLOTS) { dsl_dataset_t *ds = dn->dn_objset->os_dsl_dataset; mutex_enter(&ds->ds_lock); - ds->ds_feature_activation_needed[SPA_FEATURE_LARGE_DNODE] = - B_TRUE; + ds->ds_feature_activation[SPA_FEATURE_LARGE_DNODE] = + (void *)B_TRUE; mutex_exit(&ds->ds_lock); } |