void guess_what ()
{
char *p = malloc (1024*1024);
guess_what ();
}
void main ()
{
guess_what ();
}
I compiled and ran the program once , it segfaulted , and then I ran it twice
again , all the time it segfaulted as expected. But then when I checked up my
hard disk space , I had 0 bytes free. To verify the same , I asked my friend to
run the same code again , except he modified the malloc statement to following:
char *p = malloc (4096*1024);
This time his entire system freezed up , then init reported it has run out of
memory , when we tried to login from another console , klogd said out of memory
and the system just froze , allowing us no chance to kill the culprit process.
We ran the code again after hard reset , and this time we got a bus
error and the program exited. When we checked up the hard disk space we found
again that disk space had been gobbled up leaving a very little amount free.
Any ideas why???
vinny
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/