equal
deleted
inserted
replaced
991 dmu_tx_hold_free(tx, zp->z_id, off, len ? len : DMU_OBJECT_END); |
991 dmu_tx_hold_free(tx, zp->z_id, off, len ? len : DMU_OBJECT_END); |
992 } |
992 } |
993 |
993 |
994 error = dmu_tx_assign(tx, zfsvfs->z_assign); |
994 error = dmu_tx_assign(tx, zfsvfs->z_assign); |
995 if (error) { |
995 if (error) { |
|
996 if (error == ERESTART && zfsvfs->z_assign == TXG_NOWAIT) |
|
997 dmu_tx_wait(tx); |
996 dmu_tx_abort(tx); |
998 dmu_tx_abort(tx); |
997 zfs_range_unlock(zp, rl); |
999 zfs_range_unlock(zp, rl); |
998 return (error); |
1000 return (error); |
999 } |
1001 } |
1000 |
1002 |