Re: NFS exports of ZFS snapshots broken

From: Garrett Wollman <wollman_at_bimajority.org>
Date: Fri, 17 Nov 2023 22:51:40 UTC
<<On Fri, 17 Nov 2023 17:35:04 -0500, I wrote:

> Looking at this from the RPC side:

> 	(PUTFH, GETATTR, LOOKUP(snapshotname), GETFH, GETATTR)
> 		[NFS4_OK for all ops]
> 	(PUTFH, GETATTR)
> 		[NFS4_OK, NFS4_OK]
> 	(PUTFH, ACCESS(0x3f), GETATTR)
> 		[NFS4_OK, NFS4_OK, rights = 0x03, NFS4_OK]
> 	(PUTFH, GETATTR, LOOKUPP, GETFH, GETATTR)
> 		[NFS4_OK, NFS4_OK, NFS4ERR_NOFILEHANDLE]

> and at this point the [EIO] is returned.

For NFSv3, the client does a LOOKUP of the snapshot directory as
before, then on the next round trip, the client calls ACCESS on the
returned file handle and the server returns NFS3ERR_IO.  GETATTR on
the same file handle also returns NFS3ERR_IO.

-GAWollman