Spencer Shepler | 3 Oct 2004 10:01
Picon

Re: more re: admin revoke and edge conditions

On Sat, rick <at> snowhite.cis.uoguelph.ca wrote:
> [Spencer's good stuff snipped, which helped clarify some of my confusion]
> 
> > In these cases, not all client state would be removed ot need to be
> > removed.  However, the client should be told of the revocation and
> > hence the NFS4ERR_ADMIN_REVOKED.  The reason for returning this error
> > on RENEW is similar to the NFS4ERR_CB_PATH_DOWN such that the client
> > is active on other parts of the server's resources but not the part
> > where the state has been revoked.  The client could be told earlier of
> > the ADMIN_REVOKED than later and it could then in turn notify the
> > client environment as per its policies.  The idea was that the client
> > could "check" its state to determine what had been revoked; no clear
> > guidance was obviously given but something like a zero length read on
> > open files may suffice.
> 
> Ok, so Renew should return NFS4ERR_ADMIN_REVOKED whenever any of the state
> (doesn't have to be all of it) has been revoked?
> 
> And, it sounds like this Renew Op that returns NFS4ERR_ADMIN_REVOKED does
> Renew the client's lease. Is that correct?

Yes. It does renew; again, similarly as with the CB_PATH_DOWN error.

> 
> > If the server has rebooted, it just needs to return things like
> > NFS4ERR_STALE_CLIENTID/NFS4ERR_STALE_STATEID.  The ADMIN_REVOKED is
> > not required because all state has been removed for the client.
> 
> I did my usual crappy job of explaining what my concern was, so I think
> Spencer didn't follow it. I'll try again with an example.
(Continue reading)


Gmane