usr/src/uts/common/fs/zfs/zfs_znode.c
changeset 2113 0510bb40c993
parent 1936 b6ded90e4d4b
child 2237 45affe88ed99
equal deleted inserted replaced
2112:67e9951e7643 2113:0510bb40c993
   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