Print this page
3006 VERIFY[S,U,P] and ASSERT[S,U,P] frequently check if first argument is zero
        
*** 326,336 ****
                  ASSERT3U(db->db.db_size, >=, dn->dn_bonuslen);
                  ASSERT3U(db->db.db_offset, ==, DMU_BONUS_BLKID);
          } else if (db->db_blkid == DMU_SPILL_BLKID) {
                  ASSERT(dn != NULL);
                  ASSERT3U(db->db.db_size, >=, dn->dn_bonuslen);
!                 ASSERT3U(db->db.db_offset, ==, 0);
          } else {
                  ASSERT3U(db->db.db_offset, ==, db->db_blkid * db->db.db_size);
          }
  
          for (dr = db->db_data_pending; dr != NULL; dr = dr->dr_next)
--- 326,336 ----
                  ASSERT3U(db->db.db_size, >=, dn->dn_bonuslen);
                  ASSERT3U(db->db.db_offset, ==, DMU_BONUS_BLKID);
          } else if (db->db_blkid == DMU_SPILL_BLKID) {
                  ASSERT(dn != NULL);
                  ASSERT3U(db->db.db_size, >=, dn->dn_bonuslen);
!                 ASSERT0(db->db.db_offset);
          } else {
                  ASSERT3U(db->db.db_offset, ==, db->db_blkid * db->db.db_size);
          }
  
          for (dr = db->db_data_pending; dr != NULL; dr = dr->dr_next)
*** 2306,2316 ****
           */
          if (db->db_blkid == DMU_BONUS_BLKID) {
                  dbuf_dirty_record_t **drp;
  
                  ASSERT(*datap != NULL);
!                 ASSERT3U(db->db_level, ==, 0);
                  ASSERT3U(dn->dn_phys->dn_bonuslen, <=, DN_MAX_BONUSLEN);
                  bcopy(*datap, DN_BONUS(dn->dn_phys), dn->dn_phys->dn_bonuslen);
                  DB_DNODE_EXIT(db);
  
                  if (*datap != db->db.db_data) {
--- 2306,2316 ----
           */
          if (db->db_blkid == DMU_BONUS_BLKID) {
                  dbuf_dirty_record_t **drp;
  
                  ASSERT(*datap != NULL);
!                 ASSERT0(db->db_level);
                  ASSERT3U(dn->dn_phys->dn_bonuslen, <=, DN_MAX_BONUSLEN);
                  bcopy(*datap, DN_BONUS(dn->dn_phys), dn->dn_phys->dn_bonuslen);
                  DB_DNODE_EXIT(db);
  
                  if (*datap != db->db.db_data) {
*** 2505,2515 ****
          blkptr_t *bp = zio->io_bp;
          blkptr_t *bp_orig = &zio->io_bp_orig;
          uint64_t txg = zio->io_txg;
          dbuf_dirty_record_t **drp, *dr;
  
!         ASSERT3U(zio->io_error, ==, 0);
          ASSERT(db->db_blkptr == bp);
  
          if (zio->io_flags & ZIO_FLAG_IO_REWRITE) {
                  ASSERT(BP_EQUAL(bp, bp_orig));
          } else {
--- 2505,2515 ----
          blkptr_t *bp = zio->io_bp;
          blkptr_t *bp_orig = &zio->io_bp_orig;
          uint64_t txg = zio->io_txg;
          dbuf_dirty_record_t **drp, *dr;
  
!         ASSERT0(zio->io_error);
          ASSERT(db->db_blkptr == bp);
  
          if (zio->io_flags & ZIO_FLAG_IO_REWRITE) {
                  ASSERT(BP_EQUAL(bp, bp_orig));
          } else {