Unfortunately, I had a crash earlier on my FreeBSD server. It’s probably due to bad hardware. But I decided to take a look at the dumpfile anyway. The best resource is the FreeBSD handbook section on Debugging a Kernel Crash Dump with kgdb. That’s invaluable.
Sadly, it didn’t tell me much:
Fatal trap 12: page fault while in kernel mode fault virtual address = 0x8 fault code = supervisor write, page not present instruction pointer = 0x20:0xc04c8f79 stack pointer = 0x28:0xd13ddb44 frame pointer = 0x28:0xd13ddb54 code segment = base 0x0, limit 0xfffff, type 0x1b = DPL 0, pres 1, def32 1, gran 1 processor eflags = resume, IOPL = 0 current process = 864 (squid) trap number = 12 panic: page fault
So at the time, squid was sitting around waiting for things to happen (the stacktrace showed it as being inside poll()
) and the machine blew up. Darn. Ah well, the standard response is to just make world
and try again.