]> granicus.if.org Git - zfs/commitdiff
Merge commit 'refs/top-bases/fix-dbuf_dirty_record_t' into fix-dbuf_dirty_record_t
authorBrian Behlendorf <behlendorf1@llnl.gov>
Fri, 28 May 2010 20:46:45 +0000 (13:46 -0700)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Fri, 28 May 2010 20:46:45 +0000 (13:46 -0700)
Conflicts:
module/zfs/dnode_sync.c

1  2 
module/zfs/dbuf.c
module/zfs/zfs_znode.c

index 2fdd6b13d5d40032068c48b704a86bcd2d87bdee,42ae439972e4ce25ebd2ef38692af468bca7e0ac..6c3c853d2ccefee180de3314d963abc0166450b0
@@@ -2056,11 -2182,8 +2182,12 @@@ dbuf_sync_leaf(dbuf_dirty_record_t *dr
                while (*drp != dr)
                        drp = &(*drp)->dr_next;
                ASSERT(dr->dr_next == NULL);
+               ASSERT(dr->dr_dbuf == db);
                *drp = dr->dr_next;
 +              if (dr->dr_dbuf->db_level != 0) {
 +                      mutex_destroy(&dr->dt.di.dr_mtx);
 +                      list_destroy(&dr->dt.di.dr_children);
 +              }
                kmem_free(dr, sizeof (dbuf_dirty_record_t));
                ASSERT(db->db_dirtycnt > 0);
                db->db_dirtycnt -= 1;
Simple merge