Thanks, got it working with your patch.

So far I did not see any issue with the mount. Only in the vmkernel.log there 
are often following entrees:
WARNING: NFS41: NFS41ValidateDelegation:608: Server returned improper reason 
for no delegation: 2

Actually I have only a single link between the ESXi host and the FreeBSD host, 
but as soon as I figure out what Is the right way to configure multiple paths 
for NFS I will do more testing. 

I need also to check out what can be tuned. I expected that writes to the NFS 
datastore will be slower than iSCSI but not as slow as it is now.

andi 


-----Original Message-----
From: Rick Macklem [mailto:rmack...@uoguelph.ca] 
Sent: Sonntag, 4. März 2018 06:48
To: NAGY Andreas <andreas.n...@frequentis.com>; freebsd-stable@freebsd.org
Subject: 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).
>done
Since 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]
_______________________________________________
freebsd-stable@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"

Reply via email to