Re: client's caching of server-side capabilities

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 2021-06-29 at 12:12 -0400, Olga Kornievskaia wrote:
> On Tue, Jun 29, 2021 at 9:41 AM Olga Kornievskaia <aglo@xxxxxxxxx>
> wrote:
> > 
> > On Mon, Jun 28, 2021 at 6:06 PM Trond Myklebust
> > <trondmy@xxxxxxxxxxxxxxx> 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.
> 
> Actually, I tried to do a "mount -o remount" after taking down the
> server and changing its features (ie security label support), and the
> client does not query for supported attributes. So I think either at
> least perhaps that can be changed somehow or we do need a sysfs api
> to
> be able to change server's capabilities of a given mount.
> > > 


'-o remount' does not currently try to reprobe server capabilities, but
we could have it do that.

-- 
Trond Myklebust
Linux NFS client maintainer, Hammerspace
trond.myklebust@xxxxxxxxxxxxxxx






[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux