NAGY Andreas
2018-Mar-03 14:36 UTC
RE: NFS 4.1 RECLAIM_COMPLETE FS failed error in combination with ESXi client
Hi and thanks! First time using/needing a patch could you give me a short advise how to use it and for which version? So far I have made a fresh FreeBSD 11.1 RELEASE install as a VM on a ESXi host updated the system and did a svn checkout http://svn.freebsd.org/base/release/11.1.0/ Then tried to apply the patch in /usr/src/sys via patch < /tmp/reclaimcom2.patch Output was: Hmm... Looks like a unified diff to me... The text leading up to this was: -------------------------- |--- fs/nfsserver/nfs_nfsdserv.c.savrecl 2018-02-10 20:34:31.166445000 -0500 |+++ fs/nfsserver/nfs_nfsdserv.c 2018-02-10 20:36:07.947490000 -0500 -------------------------- Patching file fs/nfsserver/nfs_nfsdserv.c using Plan A... No such line 4225 in input file, ignoring Hunk #1 succeeded at 4019 (offset -207 lines). done So I think this was not correct, as I also noticed that nfs_nfsdserv.c 4102 lines. andi -----Original Message----- From: Rick Macklem [mailto:rmacklem at uoguelph.ca] Sent: Samstag, 3. M?rz 2018 03:01 To: NAGY Andreas <Andreas.Nagy at frequentis.com>; freebsd-stable at freebsd.org Subject: Re: NFS 4.1 RECLAIM_COMPLETE FS?failed error in combination with ESXi client NAGY Andreas wrote:>I am trying to get a FreeBSD NFS 4.1 export working with VMware Esxi 6.5u1, but >it is always mounted as read only. > >After some research, I found out that this is a known problem, and there are >threads about this from 2015 also in the mailinglist archive. > >As it seems VMware will not change the bahvior of there NFS 4.1 client I wanted >to ask here if there is a patch or workaround for this available.I believe the attached small patch deals with the ReclaimComplete issue. However, someone else who tested this had additional issues with the mount: - The client logged a couple of things (that sounded weird to me;-) - Something about Readdir seeing directories change too much.. - Something about "wrong reason for not issuing a delegation"... (I don't what either of these are caused by or whether they result in serious breakage of the mount.) They also ran into a hang when transferring a large file. It sounded to me like something that might be a network interface device driver issue and I suggested they disable TSO, LRO and jumbo frames, but I never heard back from them, so I don't know more about this. So, feel free to test with the attached patch and if you run into problems with the mount, email w.r.t. what they are. If we persevere we might get it going ok. rick [stuff snipped]
Rick Macklem
2018-Mar-04 05:48 UTC
Re: NFS 4.1 RECLAIM_COMPLETE FS failed error in combination with ESXi client
NAGY Andreas wrote:>Hi and thanks! > >First time using/needing a patch could you give me a short advise how to use it >and for which version?The only difference with kernel versions will be the line#s.>So far I have made a fresh FreeBSD 11.1 RELEASE install as a VM on a ESXi host >updated the system and did a svn checkout http://svn.freebsd.org/base/release/11.1.0/ > >Then tried to apply the patch in /usr/src/sys via patch < /tmp/reclaimcom2.patch > >Output was: >Hmm... Looks like a unified diff to me... >The text leading up to this was: >-------------------------- >|--- fs/nfsserver/nfs_nfsdserv.c.savrecl 2018-02-10 20:34:31.166445000 -0500 >|+++ fs/nfsserver/nfs_nfsdserv.c 2018-02-10 20:36:07.947490000 -0500 >-------------------------- >Patching file fs/nfsserver/nfs_nfsdserv.c using Plan A... >No such line 4225 in input file, ignoring >Hunk #1 succeeded at 4019 (offset -207 lines). >doneSince it says "Hunk #1 succeeded...", I think it patched ok. However, you can check by looking at nfsrvd_reclaimcomplete() in sys/fs/nfsserver/nfs_nfsdserv.c. Before the patch it would look like: if (*tl == newnfs_true) nd->nd_repstat = NFSERR_NOTSUPP; else nd->nd_repstat = nfsrv_checkreclaimcomplete(nd); whereas after being patched, it will look like: nd->nd_repstat = nfsrv_checkreclaimcomplete(nd); if (*tl == newnfs_true) nd->nd_repstat = 0; rick [stuff snipped]