| /linux-6.15/fs/ |
| H A D | remap_range.c | 48 if (pos_in + count < pos_in || pos_out + count < pos_out) in generic_remap_checks() 56 (pos_in >= size_in || pos_in + count > size_in || in generic_remap_checks() 61 if (pos_in >= size_in) in generic_remap_checks() 63 count = min(count, size_in - (uint64_t)pos_in); in generic_remap_checks() 76 if (pos_in + count == size_in && in generic_remap_checks() 78 bcount = ALIGN(size_in, bs) - pos_in; in generic_remap_checks() 87 pos_out + bcount > pos_in && in generic_remap_checks() 88 pos_out < pos_in + bcount) in generic_remap_checks() 306 if (pos_in > isize) in __generic_remap_file_range_prep() 308 *len = isize - pos_in; in __generic_remap_file_range_prep() [all …]
|
| H A D | read_write.c | 1521 if (pos_in + count < pos_in || pos_out + count < pos_out) in generic_copy_file_checks() 1526 if (pos_in >= size_in) in generic_copy_file_checks() 1529 count = min(count, size_in - (uint64_t)pos_in); in generic_copy_file_checks() 1537 pos_out + count > pos_in && in generic_copy_file_checks() 1538 pos_out < pos_in + count) in generic_copy_file_checks() 1566 ret = rw_verify_area(READ, file_in, &pos_in, len); in vfs_copy_file_range() 1646 loff_t pos_in; in SYSCALL_DEFINE6() local 1662 pos_in = fd_file(f_in)->f_pos; in SYSCALL_DEFINE6() 1678 pos_in += ret; in SYSCALL_DEFINE6() 1682 if (copy_to_user(off_in, &pos_in, sizeof(loff_t))) in SYSCALL_DEFINE6() [all …]
|
| H A D | dax.c | 2277 int dax_remap_file_range_prep(struct file *file_in, loff_t pos_in, in dax_remap_file_range_prep() argument 2282 return __generic_remap_file_range_prep(file_in, pos_in, file_out, in dax_remap_file_range_prep()
|
| /linux-6.15/fs/xfs/ |
| H A D | xfs_reflink.h | 47 extern loff_t xfs_reflink_remap_range(struct file *file_in, loff_t pos_in, 56 extern int xfs_reflink_remap_prep(struct file *file_in, loff_t pos_in, 59 extern int xfs_reflink_remap_blocks(struct xfs_inode *src, loff_t pos_in,
|
| H A D | xfs_reflink.c | 1445 loff_t pos_in, in xfs_reflink_remap_blocks() argument 1453 xfs_fileoff_t srcoff = XFS_B_TO_FSBT(mp, pos_in); in xfs_reflink_remap_blocks() 1570 loff_t pos_in, in xfs_reflink_remap_prep() argument 1598 ret = generic_remap_file_range_prep(file_in, pos_in, file_out, in xfs_reflink_remap_prep() 1601 ret = dax_remap_file_range_prep(file_in, pos_in, file_out, in xfs_reflink_remap_prep()
|
| H A D | xfs_file.c | 1412 loff_t pos_in, in xfs_file_remap_range() argument 1437 ret = xfs_reflink_remap_prep(file_in, pos_in, file_out, pos_out, in xfs_file_remap_range() 1442 trace_xfs_reflink_remap_range(src, pos_in, len, dest, pos_out); in xfs_file_remap_range() 1444 ret = xfs_reflink_remap_blocks(src, pos_in, dest, pos_out, len, in xfs_file_remap_range() 1455 if (pos_in == 0 && len == i_size_read(inode_in) && in xfs_file_remap_range()
|
| /linux-6.15/fs/overlayfs/ |
| H A D | file.c | 545 static loff_t ovl_copyfile(struct file *file_in, loff_t pos_in, in ovl_copyfile() argument 576 ret = vfs_copy_file_range(realfile_in, pos_in, in ovl_copyfile() 581 ret = vfs_clone_file_range(realfile_in, pos_in, in ovl_copyfile() 586 ret = vfs_dedupe_file_range_one(realfile_in, pos_in, in ovl_copyfile() 602 static ssize_t ovl_copy_file_range(struct file *file_in, loff_t pos_in, in ovl_copy_file_range() argument 606 return ovl_copyfile(file_in, pos_in, file_out, pos_out, len, flags, in ovl_copy_file_range() 610 static loff_t ovl_remap_file_range(struct file *file_in, loff_t pos_in, in ovl_remap_file_range() argument 633 return ovl_copyfile(file_in, pos_in, file_out, pos_out, len, in ovl_remap_file_range()
|
| /linux-6.15/fs/nfs/ |
| H A D | nfs4file.c | 136 static ssize_t __nfs4_copy_file_range(struct file *file_in, loff_t pos_in, in __nfs4_copy_file_range() argument 180 ret = nfs42_proc_copy(file_in, pos_in, file_out, pos_out, count, in __nfs4_copy_file_range() 190 static ssize_t nfs4_copy_file_range(struct file *file_in, loff_t pos_in, in nfs4_copy_file_range() argument 196 ret = __nfs4_copy_file_range(file_in, pos_in, file_out, pos_out, count, in nfs4_copy_file_range() 199 ret = splice_copy_file_range(file_in, pos_in, file_out, in nfs4_copy_file_range()
|
| /linux-6.15/include/linux/ |
| H A D | splice.h | 91 static inline long splice_copy_file_range(struct file *in, loff_t pos_in, in splice_copy_file_range() argument 95 return splice_file_range(in, &pos_in, out, &pos_out, len); in splice_copy_file_range()
|
| H A D | dax.h | 278 int dax_remap_file_range_prep(struct file *file_in, loff_t pos_in,
|
| H A D | fs.h | 2165 loff_t (*remap_file_range)(struct file *file_in, loff_t pos_in, 2251 int __generic_remap_file_range_prep(struct file *file_in, loff_t pos_in, 2255 int generic_remap_file_range_prep(struct file *file_in, loff_t pos_in, 2258 extern loff_t vfs_clone_file_range(struct file *file_in, loff_t pos_in,
|
| /linux-6.15/fs/btrfs/ |
| H A D | reflink.h | 10 loff_t btrfs_remap_file_range(struct file *file_in, loff_t pos_in,
|
| H A D | reflink.c | 776 static int btrfs_remap_file_range_prep(struct file *file_in, loff_t pos_in, in btrfs_remap_file_range_prep() argument 816 wb_len = ALIGN(inode_in->vfs_inode.i_size, bs) - ALIGN_DOWN(pos_in, bs); in btrfs_remap_file_range_prep() 841 ret = btrfs_wait_ordered_range(inode_in, ALIGN_DOWN(pos_in, bs), wb_len); in btrfs_remap_file_range_prep() 848 return generic_remap_file_range_prep(file_in, pos_in, file_out, pos_out, in btrfs_remap_file_range_prep()
|
| /linux-6.15/include/uapi/linux/ |
| H A D | f2fs.h | 86 __u64 pos_in; /* start position in src_fd */ member
|
| /linux-6.15/fs/f2fs/ |
| H A D | file.c | 3034 if (pos_out < 0 || pos_in < 0) in f2fs_move_file_range() 3038 if (pos_in == pos_out) in f2fs_move_file_range() 3040 if (pos_out > pos_in && pos_out < pos_in + len) in f2fs_move_file_range() 3063 if (pos_in + len > src->i_size || pos_in + len < pos_in) in f2fs_move_file_range() 3066 olen = len = src->i_size - pos_in; in f2fs_move_file_range() 3067 if (pos_in + len == src->i_size) in f2fs_move_file_range() 3079 if (!IS_ALIGNED(pos_in, F2FS_BLKSIZE) || in f2fs_move_file_range() 3080 !IS_ALIGNED(pos_in + len, F2FS_BLKSIZE) || in f2fs_move_file_range() 3094 pos_in, pos_in + len); in f2fs_move_file_range() 5270 compat_u64 pos_in; member [all …]
|
| /linux-6.15/fs/ocfs2/ |
| H A D | refcounttree.h | 110 loff_t pos_in,
|
| H A D | refcounttree.c | 4487 loff_t pos_in, in ocfs2_reflink_remap_extent() argument 4511 spos = ocfs2_bytes_to_clusters(s_inode->i_sb, pos_in); in ocfs2_reflink_remap_extent() 4513 slast = ocfs2_clusters_for_bytes(s_inode->i_sb, pos_in + len); in ocfs2_reflink_remap_extent() 4601 loff_t pos_in, in ocfs2_reflink_remap_blocks() argument 4622 if (pos_in == pos_out && pos_in == 0 && len == i_size_read(s_inode) && in ocfs2_reflink_remap_blocks() 4681 ret = ocfs2_reflink_remap_extent(s_inode, s_bh, pos_in, t_inode, t_bh, in ocfs2_reflink_remap_blocks()
|
| H A D | file.c | 2694 static loff_t ocfs2_remap_file_range(struct file *file_in, loff_t pos_in, in ocfs2_remap_file_range() argument 2724 ret = generic_remap_file_range_prep(file_in, pos_in, file_out, pos_out, in ocfs2_remap_file_range() 2740 remapped = ocfs2_reflink_remap_blocks(inode_in, in_bh, pos_in, in ocfs2_remap_file_range()
|
| /linux-6.15/fs/fuse/ |
| H A D | file.c | 3273 static ssize_t __fuse_copy_file_range(struct file *file_in, loff_t pos_in, in __fuse_copy_file_range() argument 3287 .off_in = pos_in, in __fuse_copy_file_range() 3308 err = fuse_writeback_range(inode_in, pos_in, pos_in + len - 1); in __fuse_copy_file_range()
|
| /linux-6.15/Documentation/filesystems/ |
| H A D | locking.rst | 554 loff_t (*remap_file_range)(struct file *file_in, loff_t pos_in,
|
| H A D | vfs.rst | 1125 loff_t (*remap_file_range)(struct file *file_in, loff_t pos_in, 1230 implementation should remap len bytes at pos_in of the source
|