All of lore.kernel.org
 help / color / mirror / Atom feed
From: Olga Kornievskaia <aglo@umich.edu>
To: Trond Myklebust <trondmy@hammerspace.com>
Cc: "linux-nfs@vger.kernel.org" <linux-nfs@vger.kernel.org>
Subject: Re: client's caching of server-side capabilities
Date: Tue, 29 Jun 2021 09:41:49 -0400	[thread overview]
Message-ID: <CAN-5tyHTavHRmQKGhUmBvngMwAAK2pr89zBuppK_s27HduJfqQ@mail.gmail.com> (raw)
In-Reply-To: <81154dc28d528402bf5e090a81e6892c7abc431c.camel@hammerspace.com>

On Mon, Jun 28, 2021 at 6:06 PM Trond Myklebust <trondmy@hammerspace.com> wrote:
>
> On Mon, 2021-06-28 at 16:23 -0400, Olga Kornievskaia wrote:
> > Hi folks,
> >
> > I have a general question of why the client doesn't throw away the
> > cached server's capabilities on server reboot. Say a client mounted a
> > server when the server didn't support security_labels, then the
> > server
> > was rebooted and support was enabled. Client re-establishes its
> > clientid/session, recovers state, but assumes all the old
> > capabilities
> > apply. A remount is required to clear old/find new capabilities. The
> > opposite is true that a capability could be removed (but I'm assuming
> > that's a less practical example).
> >
> > I'm curious what are the problems of clearing server capabilities and
> > rediscovering them on reboot? Is it because a local filesystem could
> > never have its attributes changed and thus a network file system
> > can't
> > either?
> >
> > Thank you.
>
> In my opinion, the client should aim for the absolute minimum overhead
> on a server reboot. The goal should be to recover state and get I/O
> started again as quickly as possible. Detection of new features, etc
> can wait until the client needs to restart.

Do I interpret this correctly: no capability discoveries before
RECLAIM_COMPLETE but perhaps after? I agree that reboot recovery
should be done as quickly as possible. If it's some time after, then
perhaps it can be done on-demand thru say nfs sysfs api: have ability
to clear current capabilities (or a specific one) and do discover new
ones?

The use case I'm going for is when a server upgrades and comes up with
support for new features. Currently, it requires a client re-mount.
But perhaps requiring "mount -o remount" in that case isn't any
different than requiring use of sysfs.

Thank you for the feedback.

>
> --
> Trond Myklebust
> Linux NFS client maintainer, Hammerspace
> trond.myklebust@hammerspace.com
>
>

  parent reply	other threads:[~2021-06-29 13:42 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-28 20:23 client's caching of server-side capabilities Olga Kornievskaia
2021-06-28 22:06 ` Trond Myklebust
2021-06-29 12:58   ` Chuck Lever III
2021-06-29 13:48     ` Olga Kornievskaia
2021-06-29 13:51       ` Chuck Lever III
2021-06-30 15:22         ` J. Bruce Fields
2021-06-30 15:52           ` Trond Myklebust
2021-06-30 16:48           ` Olga Kornievskaia
2021-06-30 17:11             ` Trond Myklebust
2021-06-29 13:41   ` Olga Kornievskaia [this message]
2021-06-29 16:12     ` Olga Kornievskaia
2021-06-29 17:05       ` Trond Myklebust

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAN-5tyHTavHRmQKGhUmBvngMwAAK2pr89zBuppK_s27HduJfqQ@mail.gmail.com \
    --to=aglo@umich.edu \
    --cc=linux-nfs@vger.kernel.org \
    --cc=trondmy@hammerspace.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.