Re: git: 51affb7e9716 - main - nfscl: Fix GetACL so that it does not want a reply cached
Date: Tue, 05 Aug 2025 00:00:10 UTC
On Mon, Aug 4, 2025 at 4:55 PM Jessica Clarke <jrtc27@freebsd.org> wrote: > > CAUTION: This email originated from outside of the University of Guelph. Do not click links or open attachments unless you recognize the sender and know the content is safe. If in doubt, forward suspicious emails to IThelp@uoguelph.ca. > > On 5 Aug 2025, at 00:39, Rick Macklem <rmacklem@freebsd.org> wrote: > > > The branch main has been updated by rmacklem: > > > > URL: https://cgit.FreeBSD.org/src/commit/?id=51affb7e97161e260f6d99cb0904daf7cc9f51a7 > > > > commit 51affb7e97161e260f6d99cb0904daf7cc9f51a7 > > Author: Rick Macklem <rmacklem@FreeBSD.org> > > AuthorDate: 2025-08-04 23:36:28 +0000 > > Commit: Rick Macklem <rmacklem@FreeBSD.org> > > CommitDate: 2025-08-04 23:36:28 +0000 > > > > nfscl: Fix GetACL so that it does not want a reply cached > > > > Without this patch, an NFSv4.1/4.2 GetACL RPC requests that > > the session cache the reply. In some cases, the reply may > > be too large to cache, resulting in a NFS4ERR_X > > error from the server. > > > > Since a GetACL is idempotent, disable reply caching for it, > > by setting that it can generate a large reply. > > Tested against a Linux server with a large ACL on a file. > > > > MFC after: 2 weeks > > --- > > sys/fs/nfs/nfs_commonsubs.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/sys/fs/nfs/nfs_commonsubs.c b/sys/fs/nfs/nfs_commonsubs.c > > index 4ffc4ce5c29f..67e33193ecec 100644 > > --- a/sys/fs/nfs/nfs_commonsubs.c > > +++ b/sys/fs/nfs/nfs_commonsubs.c > > @@ -218,7 +218,7 @@ NFSD_VNET_DEFINE_STATIC(u_char *, nfsrv_dnsname) = NULL; > > */ > > static int nfs_bigreply[NFSV42_NPROCS] = { 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, > > 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, > > - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, > > + 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, > > 1, 0, 0, 1, 0, 0, 0, 0, 0, 0 }; > > This would be much more readable and maintainable as a C99 designated > initialiser. You are more than welcome to patch it. (Some of this code is decades old and I am just trying to keep up with keeping it working for things like the MIT Kerberos transition. See D51731 as an example.) I could probably think of many nice cleanups, but I am one retired guy who does this as a hobby (not paid any $$ by anyone to do it). rick > > Jess > > > /* local functions */ >