|
[ http://www.rootshell.com/ ] Date: Thu, 3 Jun 1999 19:35:58 +0200 From: Juergen Schmidt <ju@CT.HEISE.DE> Subject: MacOS X system panic with CGI Hello all, when doing performance tests with different web servers, I found, that MacOS X Server running apache crashed under medium load, when I was calling CGI-scripts. It displays "system panic" and a stack trace with ipc_task_init. The problem appears when 32 or more processes are doing GET-requests to a cgi script in a loop. I could reproduce this on two different G3-Macs with 100%. It doesn't matter, if the processes run local or remote (I tried it via LAN with 10 MBit). Crashes appear after 30 seconds to a couple of minutes. I suppose this is a bug in the Mach kernel and *not* limited to CGI scripts. I could find no other ways to trigger it yet. So disabling CGI scripts might help for some time. You can check your machine, using the apache benchmark (ab, include on the MacOS X server) with the script at the end. Any other program to do HTTP requests in a loop should do. Apple has been informed. They could reproduce the bug at least once. We have published the issue under: http://www.heise.de/ct/english/99/13/186/ bye, ju ------- #!/bin/bash # # CGI-McPanic: script to crash MacOS X with # concurrent calls to a CGI-Script # # before use, do: # # chmod a+x /Local/Library/WebServer/CGI-Executables/test-cgi # # then call # # bash ./CGI-McPanic # NUMPROC=32 i=0 while [ $i -le $NUMPROC ] do i=$[$i + 1] ab -t 3600 http://localhost/cgi-bin/test-cgi & done -- Juergen Schmidt Redakteur/editor c't magazin PGP-Key available Verlag Heinz Heise GmbH & Co KG, Helstorferstr. 7, D-30625 Hannover EMail: ju@ct.heise.de - Tel.: +49 511 5352 300 - FAX: +49 511 5352 417 -------------------------------------------------------------------------- Date: Fri, 4 Jun 1999 13:18:54 -0500 From: "Steven M. Loranz" <sloranz@KING.NET> Subject: Re: MacOS X system panic with CGI On Thu, 3 Jun 1999, Juergen Schmidt wrote: > It displays "system panic" and a stack trace with ipc_task_init. > > The problem appears when 32 or more processes are doing > GET-requests to a cgi script in a loop. > > I could reproduce this on two different G3-Macs with > 100%. It doesn't matter, if the processes run local or > remote (I tried it via LAN with 10 MBit). Crashes appear after > 30 seconds to a couple of minutes. > > I suppose this is a bug in the Mach kernel and *not* > limited to CGI scripts. I could find no other ways to > trigger it yet. So disabling CGI scripts might help for > some time. Just a reminder that you can check out the kernel source (and just about everything else in MOSXS) for yourself by going to http://publicsource.apple.com -steve