Deleted Added
full compact
24c24
< * Copyright (c) 2012, 2014 by Delphix. All rights reserved.
---
> * Copyright (c) 2012, 2015 by Delphix. All rights reserved.
1300a1301,1310
>
> /*
> * Due to our use of dn_nlevels below, this can only be called
> * in open context, unless we are operating on the MOS.
> * From syncing context, dn_nlevels may be different from the
> * dn_nlevels used when dbuf was dirtied.
> */
> ASSERT(db->db_objset ==
> dmu_objset_pool(db->db_objset)->dp_meta_objset ||
> txg != spa_syncing_txg(dmu_objset_spa(db->db_objset)));
1323,1327c1333,1334
< /*
< * Any space we accounted for in dp_dirty_* will be cleaned up by
< * dsl_pool_sync(). This is relatively rare so the discrepancy
< * is not a big deal.
< */
---
> dsl_pool_undirty_space(dmu_objset_pool(dn->dn_objset),
> dr->dr_accounted, txg);
1342c1349
< db->db_level+1 == dn->dn_nlevels) {
---
> db->db_level + 1 == dn->dn_nlevels) {
1359,1363d1365
< if (db->db_level != 0) {
< mutex_destroy(&dr->dt.di.dr_mtx);
< list_destroy(&dr->dt.di.dr_children);
< }
<
2321c2323
< dbuf_sync_list(&dr->dt.di.dr_children, tx);
---
> dbuf_sync_list(&dr->dt.di.dr_children, db->db_level - 1, tx);
2467c2469
< dbuf_sync_list(list_t *list, dmu_tx_t *tx)
---
> dbuf_sync_list(list_t *list, int level, dmu_tx_t *tx)
2483a2486,2489
> if (dr->dr_dbuf->db_blkid != DMU_BONUS_BLKID &&
> dr->dr_dbuf->db_blkid != DMU_SPILL_BLKID) {
> VERIFY3U(dr->dr_dbuf->db_level, ==, level);
> }