From: Miklos S. <mi...@sz...> - 2014-06-13 14:16:58
|
On Thu, Jun 5, 2014 at 10:09 PM, Shachar Sharon <syn...@gm...> wrote: > Hi all, > I want to implement file-cloning for FUSE based file system (use-case: > multiple vms which share single golden-image). > > Unfortunately, btrfs' ioctl solution, used by coreutils to implement 'cp > --reflink...', will not work properly for FUSE > ( > http://git.savannah.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=45330176690b079ed47ac7c58f29a1b028f97b07 > ) > > Did anyone implement such functionality for FUSE based file-system, via > ioctl or in any other way? What arguments did he pass over to the server? Implementing copy-file for fuse (and in general) would be wonderful. There have been various proposals, one of the simplest is reusing the splice(2) syscall for this purpose. Not sure where this project stands, but as a start we could add a COPYFILE op to the fuse interfaces and drive it via the btrfs ioctl, for the time being. Should be relatively simple. Any takers? Thanks, Miklos |