Hi all,

I've been experiencing double page faults on several FreeBSD 4.x
systems with a custom device driver, which I believe is somehow
responsible. Searching the freebsd-hackers mailing list archives
I found several mentions of problems similar to mine; it seemed
that the consensus is that this problem is almost always caused
by kernel stack mistreatment.

I spent quite a bit of time trying to approach the problem with
DDB and KGDB, but while I'm able to break into the debugger when
the second fault occurs, I have not yet been able to investigate
the offending stack. One approach I've looked at was suggested
in response to the "Debugging double page fault" thread; it was
(if I understand it correctly) suggested that if one can find a
way to break on the second handler, then by saving a copy of or
a reference to the first trap frame in the first fault handler,
one would be able to investigate that frame (from said second).

Unfortunately, my knowledge of the FreeBSD kernel is still poor,
I'm unsure about the appropriate places to catch the first trap
and where to save the fault frame. I'm hoping that you can point
me at additional sources of information or have other hints.

Thanks,

-- 
christian zander
[EMAIL PROTECTED]

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message

Reply via email to