* zach@xxxxxxxxxx (zach@xxxxxxxxxx) wrote: > This code is quite dead. Release_thread is always guaranteed that the mm has > already been released, thus dead_task->mm will always be NULL. > > Signed-off-by: Zachary Amsden <zach@xxxxxxxxxx> > Index: linux-2.6.13/arch/i386/kernel/process.c > =================================================================== > --- linux-2.6.13.orig/arch/i386/kernel/process.c 2005-08-15 10:46:18.000000000 -0700 > +++ linux-2.6.13/arch/i386/kernel/process.c 2005-08-15 10:48:51.000000000 -0700 > @@ -421,17 +421,7 @@ > > void release_thread(struct task_struct *dead_task) > { > - if (dead_task->mm) { > - // temporary debugging check > - if (dead_task->mm->context.size) { > - printk("WARNING: dead process %8s still has LDT? <%p/%d>\n", > - dead_task->comm, > - dead_task->mm->context.ldt, > - dead_task->mm->context.size); > - BUG(); > - } > - } > - > + BUG_ON(dead_task->mm); This BUG_ON() has different semantics than old dead one. Is there a point? exit_mm() has already reset this to NULL, no? > release_vm86_irqs(dead_task); > }