aboutsummaryrefslogtreecommitdiff
path: root/lib/libc/rpc/authdes_prot.c
diff options
context:
space:
mode:
authorRick Macklem <rmacklem@FreeBSD.org>2025-08-08 00:52:23 +0000
committerRick Macklem <rmacklem@FreeBSD.org>2025-08-08 00:52:23 +0000
commit37b2cb5ecb0fb1b1f5a98ff4c08b61b8c05ec1d7 (patch)
treec0064ad2989085415161c92190b59679e947c775 /lib/libc/rpc/authdes_prot.c
parente4c0ecba44b20ebb2e4d80978c2cb6d16b730cb9 (diff)
vfs: Add support for file cloning to VOP_COPY_FILE_RANGEHEADmain
NFSv4 has a separate CLONE operation from COPY with a couple of semantics differences. Unlike COPY, CLONE must complete the "copy on write" and cannot return partially copied. It also is required to use offsets (and the length if not to EOF) that are aligned to a buffer boundary. Since VOP_COPY_FILE_RANGE() can already do "copy on write" for file systems that support it, such as ZFS with block cloning enabled, all this patch does is add a flag called COPY_FILE_RANGE_CLONE so that it will conform to the rule that it must do a "copy on write" to completion. The patch also adds a new pathconf(2) name _PC_CLONE_BLKSIZE, which acquires the blocksize requirement for cloning and returns 0 for file systems that do not support the "copy on write" feature. (This is needed for the NFSv4.2 clone_blksize attribute.) This patch will allow the implementation of CLONE for NFSv4.2. Reviewed by: asomers Differential Revision: https://reviews.freebsd.org/D51808
Diffstat (limited to 'lib/libc/rpc/authdes_prot.c')
0 files changed, 0 insertions, 0 deletions