[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

garbage collection thread zombies



I noticed this problem when using a writeable jffs2 rootfs.  If you remount 
it as read-only later, the garbage collection thread becomes a zombie that 
never gets reaped.   Killing the kernel thread has the same result (for 
obvious reasons).

The problem appears to be that the kernel thread is started before the init 
process is exec'd, and it's parent task is not set correctly so when init 
goes to reap it, the wait4(...) call returns successfully, but doesn't 
actually remove the zombie.  I am using a 2.4 kernel, but the problem 
probably occurs in 2.6 as well.

The following patch fixes the problem.  Please apply.

Thx,
j

--- mtd.cvs/fs/jffs2/background.c	2004-02-24 08:08:07.000000000 -0600
+++ mtd/fs/jffs2/background.c	2004-03-12 13:00:04.000000000 -0600
@@ -142,6 +142,7 @@
		}
	}
  die:
+	reparent_to_init();
	spin_lock(&c->erase_completion_lock);
	c->gc_task = NULL;
	spin_unlock(&c->erase_completion_lock);

_________________________________________________________________
One-click access to Hotmail from any Web page  download MSN Toolbar now! 
http://clk.atdmt.com/AVE/go/onm00200413ave/direct/01/


To unsubscribe from this list: send the line "unsubscribe jffs-dev" in
the body of a message to majordomo@xxxxxxx.com