diff options
author | Matthew Ahrens <[email protected]> | 2012-12-23 15:57:14 -0800 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2013-01-08 10:35:43 -0800 |
commit | 753c38392ddff9d3cf140bb4d28f3bfba52c92d2 (patch) | |
tree | 628c9789ff88963dfdab65f37522640d13051dc8 /module/zfs/zfeature.c | |
parent | 91579709fccd3e55a21970742b66c388fb1403db (diff) |
Illumos #3104: eliminate empty bpobjs
3104 eliminate empty bpobjs
Reviewed by: George Wilson <[email protected]>
Reviewed by: Adam Leventhal <[email protected]>
Reviewed by: Christopher Siden <[email protected]>
Reviewed by: Garrett D'Amore <[email protected]>
Approved by: Eric Schrock <[email protected]>
References:
illumos/illumos-gate@f17457368189aa911f774c38c1f21875a568bdca
illumos changeset: 13782:8f78aae28a63
https://www.illumos.org/issues/3104
Ported-by: Brian Behlendorf <[email protected]>
Diffstat (limited to 'module/zfs/zfeature.c')
-rw-r--r-- | module/zfs/zfeature.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/module/zfs/zfeature.c b/module/zfs/zfeature.c index 24ff18fc3..c09b32d17 100644 --- a/module/zfs/zfeature.c +++ b/module/zfs/zfeature.c @@ -229,7 +229,12 @@ feature_get_refcount(objset_t *os, uint64_t read_obj, uint64_t write_obj, uint64_t refcount; uint64_t zapobj = feature->fi_can_readonly ? write_obj : read_obj; - ASSERT(0 != zapobj); + /* + * If the pool is currently being created, the feature objects may not + * have been allocated yet. Act as though all features are disabled. + */ + if (zapobj == 0) + return (ENOTSUP); err = zap_lookup(os, zapobj, feature->fi_guid, sizeof (uint64_t), 1, &refcount); |