Date: Sat, 17 Jun 1995 19:53:36 -0400 From: dennis@et.htp.com (dennis) To: freebsd-hackers@freebsd.org Subject: RE: Panics and such Message-ID: <199506172353.TAA22074@mail.htp.com>
next in thread | raw e-mail | index | archive | help
terry@cs.weber.edu wrote [much deleted] >Now there *are* two classes of panic. One is the result of an >unrecoverable failure mode. UTS has unrecoverable failure modes, >too -- don't let them kid you. You hadle these by panicing. > There are WAY too many panics in the BSD code. Somewhere along the line the reason for a panic has been grossly expanded. I complained to BSDI (the exact same code is in FreeBSD) when we discovered that an unrecognized ioctl command to a raw socket will panic the machine. Of course they didn't write the code..so they had no opinion (another story). Upon examination of the code, there are many places where panics are used where an informational display or logging would suffice (like trying to send an invalid ICMP type...why panic, just don't do it). These things really should be scrubbed, eventually. As for the unrecoverable stuff, there are machines that will never "panic" (like cisco routers). In many cases you could just fail the operation or exit context, hoping that no damage was done. You may just lose a buffer or send out a bogus packet. For a commercial product, the "appearence" of indescructablity is important....however if it happens often enough you will have a non-functioning machine. On the cisco (2501) for example, if you send SABMs (erroneously) on a serial link that the cisco has configured for frame relay, you will get no error messages but in a few minutes all of the memory in the machine will be consumed (probably by lost buffers). There's no panic or crash, but the persistant problem eventually caused a system failure. The thought behind it, I guess, is that in UNIX an isolated single event might cause the system to go down, while on the cisco only 1 buffer would be lost and the user would never know it. dennis
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199506172353.TAA22074>