[PATCH 0/4] forkbomb killer
From: KAMEZAWA Hiroyuki
Date: Thu Mar 24 2011 - 05:29:17 EST
Cleaned up and fixed unclear logics. and removed RFC.
Maybe this version is easy to be read.
When we see forkbomb, it tends can be a fatal one.
When A user makes a forkbomb (and sometimes reaches ulimit....
In this case,
- If the system is not in OOM, the admin may be able to kill all threads by
hand..but forkbomb may be faster than pkill() by admin.
- If the system is in OOM, the admin needs to reboot system.
OOM killer is slow than forkbomb.
So, I think forkbomb killer is appreciated. It's better than reboot.
At implementing forkbomb killer, one of difficult case is like this
# forkbomb(){ forkbomb|forkbomb & } ; forkbomb
With this, parent tasks will exit() before the system goes under OOM.
So, it's difficult to know the whole image of forkbomb.
This patch introduce a subsystem to track mm's history and records it
even after the task exit. (It will be flushed periodically.)
I tested with several forkbomb cases and this patch seems work fine.
Maybe some more 'heuristics' can be added....but I think this simple
one works enough. Any comments are welcome.
Thanks,
-Kame
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/