|
|
Classification: |
C++ |
Category: |
Debugging |
Created: |
03/29/99 |
Modified: |
12/27/2001 |
Number: |
FAQ-0637 |
Platform: |
ER5 |
|
Question: My machine has done a 3-beep reset and the Ctrl-Fn-R reset information says "Kernel FAULT: 0 Watch Dog" . What does this mean?
Answer: The "Watch Dog" fault is raised when the machine stops servicing tick interrupts for long enough that the watchdog timer expires.
This is assumed to be a very bad thing indeed and on some hardware such as the Series 5 the machine has to reset to get back
into a sensible state.
On the Series 5, tick interrupts happen 64 times per second, so the Watch Dog fault means that tick interrupts have been
blocked for at least 15 milliseconds. Bugs that can cause this include:
1. An interrupt service routine that runs for too long 2. An interrupt service routine which fails to clear the interrupt before exiting (so it gets called again immediately) 3. A faulty device causing a continuous stream of interrupts
All of these bugs are very serious and will prevent Symbian OS from working, so on some hardware an automatic reset is the
best chance of getting the software back into a workable state. Note that on other hardware different methods to reset the
watchdog may be used, and the watchdog will almost certainly have a different timeout to that of the Series 5.
The watch dog interrupt is disabled in MARM DEBUG builds because kernel tracing will make some interrupt routines delay while
a trace message is printed via the serial port.
|
|
|