unkillable process during core dump

From: Alexander V. Lukyanov
Date: Tue May 06 2008 - 01:16:04 EST


Hello!

I have noticed that a process doing a core dump is unkillable.
Now imagine that there are many such processes and they are large.
An example:

#include <signal.h>
#include <stdlib.h>
#include <unistd.h>
int main() {
calloc(1000000000,1);
signal(SIGCLD,SIG_IGN);
while(1) {
if(fork()==0) {
raise(SIGABRT);
_exit(0);
}
sleep(10);
}
return 0;
}

Try with large enough ulimit -c and with sysctl kernel.core_uses_pid=0.
You kill the parent, but the children are still doing their core dumps.

--
Alexander.
--
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/