ztest failure: assertion refcount_count(&tx->tx_space_written) + delta <= tx->tx_space_towrite
zfs - Zettabyte File System
Analysis by Matt Ahrens:
ztest fails this assertion because ztest_dmu_read_write() does dmu_tx_hold_free(tx, bigobj, bigoff, bigsize); and then dmu_object_set_checksum(os, bigobj, (enum zio_checksum)ztest_random_dsl_prop(ZFS_PROP_CHECKSUM), tx); If the region to free is past the end of the file, the DMU assumes that there will be nothing to do for this object. However, ztest does set_checksum(), which must modify the dnode. The fix is for ztest to also call dmu_tx_hold_bonus(tx, bigobj); so we can account for the dirty data associated with setting the checksum
This was a regression caused by bug #3834.
Updated by Christopher Siden about 6 years ago
- Status changed from In Progress to Closed
commit be9000c Author: Matthew Ahrens <firstname.lastname@example.org> Date: Wed Aug 7 11:32:46 2013 3955 ztest failure: assertion refcount_count(&tx->tx_space_written) + delta <= tx->tx_space_towrite Reviewed by: Adam Leventhal <email@example.com> Reviewed by: Dan Kimmel <firstname.lastname@example.org> Reviewed by: George Wilson <email@example.com> Approved by: Richard Lowe <firstname.lastname@example.org>