Messages in this thread | | | From | "Eric W. Biederman" <> | Date | Sat, 08 Jan 2022 12:20:53 -0600 | Subject | Re: [PATCH 09/10] kthread: Ensure struct kthread is present for all kthreads |
| |
Al Viro <viro@zeniv.linux.org.uk> writes:
> On Wed, Dec 08, 2021 at 02:25:31PM -0600, Eric W. Biederman wrote: >> Today the rules are a bit iffy and arbitrary about which kernel >> threads have struct kthread present. Both idle threads and thread >> started with create_kthread want struct kthread present so that is >> effectively all kernel threads. Make the rule that if PF_KTHREAD >> and the task is running then struct kthread is present. >> >> This will allow the kernel thread code to using tsk->exit_code >> with different semantics from ordinary processes. > > Getting rid of ->exit_code abuse is independent from this. > I'm not saying that this change is a bad idea, but it's an > independent thing. Simply turn these two failure exits > into do_exit(0) in 06/10 and that's it. Then this one > would get rid of if (!self) and the second of those two > calls, but it won't be nailed to that point of queue.
That is a good point.
As this code has been in linux-next for a while, I am going to leave the dependency in place in the interests of sending Linus tested code.
This change with the bit about which field points to struct kthread seems like a good idea on it's own merits.
Eric
| |