2014-02-24 6:22 GMT+09:00, Dave Chinner <david@xxxxxxxxxxxxx>: > On Wed, Feb 19, 2014 at 01:37:55AM +0900, Namjae Jeon wrote: >> From: Namjae Jeon <namjae.jeon@xxxxxxxxxxx> >> >> This patch implements fallocate's FALLOC_FL_COLLAPSE_RANGE for XFS. >> >> The semantics of this flag are following: >> 1) It collapses the range lying between offset and length by removing any >> data >> blocks which are present in this range and than updates all the >> logical >> offsets of extents beyond "offset + len" to nullify the hole created >> by >> removing blocks. In short, it does not leave a hole. >> 2) It should be used exclusively. No other fallocate flag in combination. >> 3) Offset and length supplied to fallocate should be fs block size >> aligned >> in case of xfs and ext4. >> 4) Collaspe range does not work beyond i_size. >> >> Signed-off-by: Namjae Jeon <namjae.jeon@xxxxxxxxxxx> >> Signed-off-by: Ashish Sangwan <a.sangwan@xxxxxxxxxxx> > ..... >> + while (!error && !done) { >> + tp = xfs_trans_alloc(mp, XFS_TRANS_DIOSTRAT); >> + tp->t_flags |= XFS_TRANS_RESERVE; > Hi Dave. > This probably shouldn't use XFS_TRANS_RESERVE. If we are at ENOSPC, > then the operation simply fails. Yes, we've already punched the > hole, so we shouldn't get ENOSPC here, but I don't think it's worth > dipping into the reserve pool as it has much more important uses... Okay. > > You don' tneed to resent the entire patch for this - I can remove it > directly myself.... Thanks very much for your help!! > > Otherwise it looks good, so consider it > > Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx> > > Cheers, > > Dave. > -- > Dave Chinner > david@xxxxxxxxxxxxx > _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs