freebsd-dev/sys/fs/nfsclient
Rick Macklem 21de450aa1 nfscl: Add support for a NFSv4 AppendWrite RPC
For IO_APPEND VOP_WRITE()s, the code first does a
Getattr RPC to acquire the file's size, before it
can do the Write RPC.

Although NFS does not have an append write operation,
an NFSv4 compound can use a Verify operation to check
that the client's notion of the file's size is
correct, followed by the Write operation.

This patch modifies nfscl_wcc_data() to optionally
acquire the file's size, for use with an AppendWrite.
Although the "stuff" arguments are always NULL
(these were used for the Mac OSX port and should be
cleared out someday), make the argument to
nfscl_wcc_data() explicitly NULL for clarity.

This patch does not cause any semantics change until
the AppendWrite is added in a future commit.
2022-04-08 13:59:05 -07:00
..
nfs_clbio.c nfscl: Fix IO_APPEND writes from kernel space 2022-03-28 15:11:52 -07:00
nfs_clcomsubs.c nfsclient: Fix a typos in source code comments 2022-03-27 19:27:05 +02:00
nfs_clkdtrace.c fs: clean up empty lines in .c and .h files 2020-09-01 21:18:40 +00:00
nfs_clkrpc.c fs: clean up empty lines in .c and .h files 2020-09-01 21:18:40 +00:00
nfs_clnfsiod.c Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many) 2020-02-26 14:26:36 +00:00
nfs_clnode.c nfscl: Cache an open stateid for the "oneopenown" mount option 2021-07-28 15:48:27 -07:00
nfs_clport.c nfscl: Add support for a NFSv4 AppendWrite RPC 2022-04-08 13:59:05 -07:00
nfs_clrpcops.c nfscl: Add support for a NFSv4 AppendWrite RPC 2022-04-08 13:59:05 -07:00
nfs_clstate.c nfscl: Fix a use after free in nfscl_cleanupkext() 2022-02-25 07:27:03 -08:00
nfs_clsubs.c nfsclient: add nfs node locking around uses of n_direofoffset 2021-02-28 14:53:54 -08:00
nfs_clvfsops.c nfscl: Fix use after free for forced dismount 2021-11-03 12:15:40 -07:00
nfs_clvnops.c nfscl: Do not do a Lookup+Open for pNFS mounts 2022-03-17 07:48:06 -07:00
nfs_kdtrace.h fs: clean up empty lines in .c and .h files 2020-09-01 21:18:40 +00:00
nfs.h Remove "struct ucred*" argument from vtruncbuf 2019-05-24 20:27:50 +00:00
nfsmount.h nfscl: Add a VOP_DEALLOCATE() for the NFSv4.2 client 2021-08-27 18:31:36 -07:00
nfsnode.h PR#259071 provides a test program that fails for the NFS client. 2021-10-30 16:35:02 -07:00
nlminfo.h sys/fs: further adoption of SPDX licensing ID tags. 2017-11-27 15:15:37 +00:00