opnsense-src/sys/fs/nfsclient
Rick Macklem 925d9b3aba nfscl: Make NFSv4.2 Copy set atime on infd
RFC7862 does not specify infile atime behaviour when a NFSv4.2 Copy
operation is performed.  Since the collective opinion of a mailing
list discussion (on freebsd-hackers@) seemed to indicate that
copy_file_range(2) should update atime on the infd,
even if there is no data copied, this
patch attempts to ensure that behaviour.

For Copy, it preceeds the Copy operation with a Setattr of
TimeAccess_Set(NFSv4. speak for atime) for the invp.  For the case
where no data will be copied, it does a Setattr RPC to set
TimeAccess_Set for the invp.

A __FreeBSD_version bump will be done as a separate commit, since
this patch changes the internal interface between the nfscommon and
nfscl modules.

(cherry picked from commit 57ce37f9dcd0ec749e5e4512e1e44eb963565c68)
2023-12-29 15:18:14 -08:00
..
nfs.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
nfs_clbio.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
nfs_clcomsubs.c nfsclient: Propagate copyin() errors from nfsm_uiombuf() 2023-12-12 14:11:51 -05:00
nfs_clkdtrace.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
nfs_clkrpc.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
nfs_clnfsiod.c nfscl: Add sysctl flag CTLFLAG_TUN to loader tunable 2023-10-12 12:08:19 +08:00
nfs_clnode.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
nfs_clport.c nfscl: Use Claim_Null_FH and Claim_Deleg_Cur_FH 2023-11-21 15:55:19 -08:00
nfs_clrpcops.c nfscl: Make NFSv4.2 Copy set atime on infd 2023-12-29 15:18:14 -08:00
nfs_clstate.c nfscl: newnfs_copycred() cannot be called when a mutex is held 2023-11-21 16:09:13 -08:00
nfs_clsubs.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
nfs_clvfsops.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
nfs_clvnops.c nfscl: Make NFSv4.2 Copy set atime on infd 2023-12-29 15:18:14 -08:00
nfs_kdtrace.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
nfsmount.h nfscl: Use Claim_Null_FH and Claim_Deleg_Cur_FH 2023-11-21 15:55:19 -08:00
nfsnode.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
nlminfo.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00