no, this is buggy in the same way - we wont do a deactivate_mm() for
kernel threads. The check should be left alone in exit_mm(), we should
at most add a check for NULL mm to this place:
if (tsk->clear_child_tid
&& !(tsk->flags & PF_SIGNALED)
&& atomic_read(&mm->mm_users) > 1) {
but ... can mm in fact ever be NULL if tsk->clear_child_tid is set?
Ingo
--