Hello, Bruce. On Mon, May 04, 2020 at 10:15:14PM -0400, J. Bruce Fields wrote: > We're currently using it to pass the struct svc_rqst that a new nfsd > thread needs. But once the new thread has gotten that, I guess it could > set kthread->data to some global value that it uses to say "I'm a knfsd > thread"? > > I suppose that would work. > > Though now I'm feeling greedy: it would be nice to have both some kind > of global flag, *and* keep kthread->data pointing to svc_rqst (as that > would give me a simpler and quicker way to figure out which client is > conflicting). Could I take a flag bit in kthread->flags, maybe?
Hmm... that'd be solvable if kthread->data can point to a struct which does both things, right? Because it doesn't have free() callback, it's a bit awkward but the threadfn itself can unlink and RCU-free it before returning. Thanks. -- tejun