On Tue, Mar 29, 2022 at 07:58:46PM +0000, Chuck Lever III wrote: > Got it. Agreed, cl_cs_client_state should be reinitialized if > a courtesy client is transitioned back to "active". > > Dai, would you add > > +enum courtesy_client_state { > >>> NFSD4_CLIENT_ACTIVE = 0, > + NFSD4_CLIENT_COURTESY, > + NFSD4_CLIENT_EXPIRED, > + NFSD4_CLIENT_RECONNECTED, > +}; > > And set cl_cs_client_state to ACTIVE where the client is > allowed to transition back to being active? I'm not clear then what the RECONNECTED->ACTIVE transition would be. My feeling is that the RECONNECTED state shouldn't exist, and that there should only be a transition of EXPIRED back to ACTIVE. --b.