mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2025-01-27 18:34:22 +03:00
Fix ASSERT in dmu_free_long_object_raw()
This small patch fixes an issue where dmu_free_long_object_raw() calls dnode_hold() after freeing the dnode a line above. Reviewed-by: Jorgen Lundman <lundman@lundman.net> Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Tom Caputi <tcaputi@datto.com> Closes #6766
This commit is contained in:
parent
ca9b8e8797
commit
35df0bb556
@ -932,9 +932,10 @@ dmu_free_long_object_impl(objset_t *os, uint64_t object, boolean_t raw)
|
||||
dmu_tx_mark_netfree(tx);
|
||||
err = dmu_tx_assign(tx, TXG_WAIT);
|
||||
if (err == 0) {
|
||||
if (raw)
|
||||
err = dmu_object_dirty_raw(os, object, tx);
|
||||
if (err == 0)
|
||||
err = dmu_object_free(os, object, tx);
|
||||
if (err == 0 && raw)
|
||||
VERIFY0(dmu_object_dirty_raw(os, object, tx));
|
||||
|
||||
dmu_tx_commit(tx);
|
||||
} else {
|
||||
|
Loading…
Reference in New Issue
Block a user