I found a way to reliably OOM test12-pre7 to death. (not my goal;)
1. Start a make -jN bzImage where N is large enough to swap ~hard.
2. Let it ramp up such that oh, say 50mb is in swap and then ^C.
... repeat a few times to verify that all jobs terminate properly,
and that you can do this until blue in the face. (don't be suprised
if you start seeing occasional SIGSEGV [yes, even on UP boxen] after
doing this for a while, but what comes next is nasty)
3. swapoff -a; swapon -a
4. goto 1
You should now see is the box go swap NUTS, and run all the way into
OOM as soon as you interrupt the build. I just finished repeating
this in virgin test12-pre7 enough times to call it fully repeatable.
If you SysRq-E before it kills bash and leaves zillion zombies lying
around, it'll seem to recover. You'll likely decide to reboot pretty
shortly thereafter ;-)
-- Versions installed: (if some fields are empty or look
-- unusual then possibly you have very old versions)
Linux el-kaboom 2.4.0-test12 #1 Sat Dec 9 08:29:23 CET 2000 i686 unknown
Kernel modules 2.3.21
Gnu C gcc-2.95.2
Linux C Library > libc.2.2
Dynamic linker ldd (GNU libc) 2.2
Modules Loaded nls_iso8859-1 nls_cp437 vfat fat