search for: clone_range

Displaying 3 results from an estimated 3 matches for "clone_range".

2012 Apr 20
0
send/receive and clone/clone_range ioctls
...anges are determined by the transid of inodes and the generation number of file extent items. An inode/extent is considered to be changed if the transid/generation is higher then a specified generation. While testing the code I found a problem with files where parts where cloned with the BTRFS_IOC_CLONE_RANGE ioctl. When the extents get cloned, their generation is cloned too. Which means, that even if the file was actually changed, my checks may say that it is unchanged because the extents generation numbers are lower then the specified generation number. The same problem may occur when BTRFS_IOC_CLONE...
2010 Jun 12
0
[PATCH] Btrfs: fix CLONE ioctl destination file size expansion to block boundary
The CLONE and CLONE_RANGE ioctls round up the range of extents being cloned to the block size when the range to clone extends to the end of file (this is always the case with CLONE). It was then using that offset when extending the destination file''s i_size. Fix this by not setting i_size beyond the originally re...
2010 Dec 06
9
"Appending" data to the middle of a file using btrfs-specific features
...kups). I''ve been told that the problem is somewhat difficult to solve properly under block-based representation of data, but I was hoping that btrfs'' reflink mechanism and its space-efficient packing of small files might make it doable. A hack I can think of is to do a BTRFS_IOC_CLONE_RANGE into a new file (upto the offset), writing whatever data is required, and then doing another BTRFS_IOC_CLONE_RANGE with an offset for the rest of the original file. This can be followed by a rename() over the original file. Similarly for removing data from the middle of a file. Would this work? Wou...