Hi all, This patchset moves BTRFS_IOC_CLONE/BTRFS_IOC_CLONE_RANGE to common vfs layer and adds NFS42 CLONE support to knfsd. It is based on top of Trond's linux-next branch (a85240d254) and Anna's latest sys_copy_file_range work (v7). With this, btrfs/cifs/nfs all handle CLONE/CLONE_RANGE ioctls through the .copy_file_range method instead of each implementing them in the private ioctl handlers. Cheers, Tao Anna Schumaker (2): nfsd: Pass filehandle to nfs4_preprocess_stateid_op() NFSD: Implement the CLONE call Peng Tao (7): vfs: add COPY_FILE_CLONE_ONLY flag cifs: add .copy_file_range file operation nfs42: add .copy_file_range file operation vfs: pull btrfs clone API to vfs layer btrfs: remove btrfs_ioctl_clone(_range) cifs: remove private handler of BTRFS_IOC_CLONE nfs42: remove private clone ioctl handler fs/btrfs/ioctl.c | 49 ------------------ fs/cifs/cifsfs.c | 22 ++++++++ fs/cifs/cifsfs.h | 4 +- fs/cifs/ioctl.c | 103 ++++++++++++++++++++----------------- fs/ioctl.c | 40 +++++++++++++++ fs/nfs/nfs4file.c | 133 +++++++++--------------------------------------- fs/nfsd/nfs4proc.c | 96 +++++++++++++++++++++++++++++++--- fs/nfsd/nfs4state.c | 6 +-- fs/nfsd/nfs4xdr.c | 21 ++++++++ fs/nfsd/state.h | 5 +- fs/nfsd/vfs.c | 12 +++++ fs/nfsd/vfs.h | 1 + fs/nfsd/xdr4.h | 10 ++++ fs/read_write.c | 9 ++-- include/linux/fs.h | 3 ++ include/linux/nfs4.h | 4 +- include/uapi/linux/fs.h | 9 ++++ 17 files changed, 303 insertions(+), 224 deletions(-) -- 1.8.3.1 -- To unsubscribe from this list: send the line "unsubscribe linux-cifs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html