On Sun, 6 Jan 2019 at 07:10, David Miller <da...@davemloft.net> wrote: > > From: Taehee Yoo <ap420...@gmail.com> > Date: Mon, 31 Dec 2018 01:31:43 +0900 > > > +void exit_umh(struct task_struct *tsk) > > +{ > > + struct umh_info *info; > > + pid_t pid = tsk->pid; > > + > > + mutex_lock(&umh_list_lock); > > + list_for_each_entry(info, &umh_list, list) { >
Thank you for review! > So this is probably too expensive of a cost for every process exit. > The problem is that the cost will be taken even if the process is > not a UMH. > Yes, I agree with you. > I've taken my time to respond in hopes that I could come up with a > good alternative to suggest, but so far I don't have any better ideas. > > I'll keep thinking about this some more, please let me know if you > have any ideas. Thanks a lot for spending time to think about better ideas! How about adding a new PF_UMH flag for task_struct->flags to identify UMH process? By using this flag, the exit_umh() can avoid unnecessary lookups. Thanks again.