MFC r259576:
MFV r258923: 4188 assertion failed in dmu_tx_hold_free(): dn_datablkshift != 0 illumos/illumos-gate@bb411a08b0
This commit is contained in:
parent
53624fa293
commit
9a484465f6
@ -635,9 +635,16 @@ dmu_tx_hold_free(dmu_tx_t *tx, uint64_t object, uint64_t off, uint64_t len)
|
||||
uint64_t start = off >> shift;
|
||||
uint64_t end = (off + len) >> shift;
|
||||
|
||||
ASSERT(dn->dn_datablkshift != 0);
|
||||
ASSERT(dn->dn_indblkshift != 0);
|
||||
|
||||
/*
|
||||
* dnode_reallocate() can result in an object with indirect
|
||||
* blocks having an odd data block size. In this case,
|
||||
* just check the single block.
|
||||
*/
|
||||
if (dn->dn_datablkshift == 0)
|
||||
start = end = 0;
|
||||
|
||||
zio = zio_root(tx->tx_pool->dp_spa,
|
||||
NULL, NULL, ZIO_FLAG_CANFAIL);
|
||||
for (uint64_t i = start; i <= end; i++) {
|
||||
|
Loading…
Reference in New Issue
Block a user