On Wed, 19 Dec 2018, J. Bruce Fields wrote: > On Tue, Dec 18, 2018 at 09:29:26AM -0500, Scott Mayhew wrote: > > +skip_grace: > > + printk(KERN_INFO "NFSD: no clients to reclaim, skipping NFSv4 grace period (net %x)\n", > > + net->ns.inum); > > + queue_delayed_work(laundry_wq, &nn->laundromat_work, nn->nfsd4_lease * HZ); > > + /* > > + * we could call nfsd4_end_grace() here, but it has a dprintk() > > + * that would be confusing if debug logging is enabled > > + */ > > In that case, I'd rather pull the dprintk out of nfsd4_end_grace into > its only other caller (nfs4_laundromat), instead of duplicating this > stuff. Okay, will do. -Scott > > > + nn->grace_ended = true; > > + nfsd4_record_grace_done(nn); > > + locks_end_grace(&nn->nfsd4_manager); > > (Yes, it's only three lines, but it's a little subtle, I'd rather have > it all in one place.) > > --b. > > > + return 0; > > } > > > > /* initialization to perform when the nfsd service is started: */ > > diff --git a/fs/nfsd/nfsctl.c b/fs/nfsd/nfsctl.c > > index 6384c9b94898..950ac6683be9 100644 > > --- a/fs/nfsd/nfsctl.c > > +++ b/fs/nfsd/nfsctl.c > > @@ -1240,6 +1240,7 @@ static __net_init int nfsd_init_net(struct net *net) > > nn->nfsd4_lease = 45; /* default lease time */ > > nn->nfsd4_grace = 45; > > nn->somebody_reclaimed = false; > > + nn->track_reclaim_completes = false; > > nn->clverifier_counter = prandom_u32(); > > nn->clientid_counter = prandom_u32(); > > nn->s2s_cp_cl_id = nn->clientid_counter++; > > -- > > 2.17.1