[Linux-cachefs] Adventures in NFS re-exporting
Trond Myklebust
trondmy at hammerspace.com
Thu Dec 3 20:27:39 UTC 2020
On Thu, 2020-12-03 at 13:51 -0500, bfields wrote:
> On Thu, Dec 03, 2020 at 12:20:35PM +0000, Daire Byrne wrote:
> > Just a small update based on the most recent patchsets from Trond &
> > Bruce:
> >
> > https://patchwork.kernel.org/project/linux-nfs/list/?series=393567
> > https://patchwork.kernel.org/project/linux-nfs/list/?series=393561
> >
> > For the write-through tests, the NFSv3 re-export of a NFSv4.2
> > server
> > has trimmed an extra GETATTR:
> >
> > Before: originating server <- (vers=4.2) <- reexport server -
> > (vers=3)
> > <- client writing = WRITE,COMMIT,GETATTR .... repeating
> >
> > After: originating server <- (vers=4.2) <- reexport server -
> > (vers=3)
> > <- client writing = WRITE,COMMIT .... repeating
> >
> > I'm assuming this is specifically due to the "EXPORT_OP_NOWCC"
> > patch?
>
> Probably so, thanks for the update.
>
> > All other combinations look the same as before (for write-through).
> > An
> > NFSv4.2 re-export of a NFSv3 server is still the best/ideal in
> > terms
> > of not incurring extra metadata roundtrips when writing.
> >
> > It's great to see this re-export scenario becoming a better
> > supported
> > (and performing) topology; many thanks all.
>
> I've been scratching my head over how to handle reboot of a re-
> exporting
> server. I think one way to fix it might be just to allow the re-
> export
> server to pass along reclaims to the original server as it receives
> them
> from its own clients. It might require some protocol tweaks, I'm not
> sure. I'll try to get my thoughts in order and propose something.
>
It's more complicated than that. If the re-exporting server reboots,
but the original server does not, then unless that re-exporting server
persisted its lease and a full set of stateids somewhere, it will not
be able to atomically reclaim delegation and lock state on the server
on behalf of its clients.
--
Trond Myklebust
Linux NFS client maintainer, Hammerspace
trond.myklebust at hammerspace.com
More information about the Linux-cachefs
mailing list