> On Oct 9, 2023, at 7:35 PM, NeilBrown <neilb@xxxxxxx> wrote: > We are required to hold a reference to the svc_serv struct while > stopping the last thread, as doing that could otherwise drop the last > reference itself and the svc_serv would be freed while still in use. > > lockd doesn't do this. After startup, the only reference is held by the > running thread. > > So change locked to hold a reference on nlmsvc_serv while-ever the > service is active, and only drop it after the last thread has been > stopped. > > Note: it doesn't really make sense for threads to hold references to the > svc_serv any more. The fact threads are included in serv->sv_nrthreads > is sufficient. Maybe a future patch could address this. > > Reported-by: Jeff Layton <jlayton@xxxxxxxxxx> > Fixes: 68cc388c3238 ("SUNRPC: change how svc threads are asked to exit.") > Signed-off-by: NeilBrown <neilb@xxxxxxx> Thanks for the fast response! Should I squash this into 68cc, or apply it before? I would like to ensure that bisect works nicely over this series of commits. -- Chuck Lever