On Wed, 29 Jan 2025, cel@xxxxxxxxxx wrote: > From: Chuck Lever <chuck.lever@xxxxxxxxxx> > > On Sat, 25 Jan 2025 20:13:18 -0500, Jeff Layton wrote: > > nfsd_file_dispose_list_delayed can be called from the filecache > > laundrette, which is shut down after the nfsd threads are shut down and > > the nfsd_serv pointer is cleared. If nn->nfsd_serv is NULL then there > > are no threads to wake. > > > > Ensure that the nn->nfsd_serv pointer is non-NULL before calling > > svc_wake_up in nfsd_file_dispose_list_delayed. This is safe since the > > svc_serv is not freed until after the filecache laundrette is cancelled. > > > > [...] > > Applied to nfsd-testing, thanks! > > Test experience should demonstrate whether more strict memory > ordering semantics are needed. No it won't. The need for READ_ONCE is theoretical, not - in this case - practical. “Program testing can be used to show the presence of bugs, but never to show their absence!” ― Edsger W. Dijkstra NeilBrown > > [1/1] nfsd: validate the nfsd_serv pointer before calling svc_wake_up > commit: 363683ced1718d66ad54e1bdf52d41d544f783b2 > > -- > Chuck Lever > >