I've experienced a few kernel page fault (fatal trap 12) on my FreeBSD 10.3-RELEASE server. They occur anywhere from milliseconds of uptime to days of uptime. The current process is always different (pagedaemon, pkg, find).

After reading online, the answer seems to point towards failing hardware. My question is how exactly does the failing hardware manifest itself in a kernel level page fault? Why doesn't failing hardware result in a Kernel panic with more descriptive information?

UPDATE: As per Bob's post below, I performed hardware testing. I had a bad RAM stick. I used memtest to determine that.


A kernel panic is either a software detected error, or some hardware trap that has been sprung and detected by the kernel as being in kernel code. The only safe thing for the kernel to do is panic (i.e. voluntarily halt). This could be caused by bad memory, which causes the kernel to execute bad memory contents as code, or bad memory which causes the kernel to get bad data which causes some error or detected inconsistency.

A kernel level page fault is also caused by bad kernel data; the kernel tries to access a page that doesn't exist, probably because it's using a bad address that it's fetched from memory. In this case all the kernel knows is that it used a bad address; one could trace the code back with a debugger to get clues how that started, but you wouldn't go back far before encountering multiple causes.

The upshot is that all you can do if you get kernel level page faults is test the hardware!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.