|
1 <h1>KERN</h1> |
|
2 <p> |
|
3 These panic numbers represent errors which cause the Kernel itself to |
|
4 terminate. When the kernel terminates for the reasons listed here, it is said |
|
5 to fault rather than panic. |
|
6 </p> |
|
7 <p> |
|
8 The faults themselves are raised by kernel side code. |
|
9 </p> |
|
10 <p>Note:many of the faults listed here are raised in debug |
|
11 builds only. |
|
12 </p> |
|
13 <code>0-3</code> |
|
14 <p> |
|
15 Not used. |
|
16 </p> |
|
17 <code>4</code> |
|
18 <p> |
|
19 This fault is raised when a system thread has panicked or |
|
20 terminated causing the entire system to re-boot. |
|
21 </p> |
|
22 <code>5</code> |
|
23 <p> |
|
24 Not used. |
|
25 </p> |
|
26 <code>6</code> |
|
27 <p> |
|
28 This fault is raised when adding a code segment, a |
|
29 <code>DCodeSeg</code> object, to the dependency table of another code segment. |
|
30 </p> |
|
31 <p> |
|
32 The fault occurs when the number of dependent code segments added |
|
33 exceeds the maximum expected, suggesting some inconsistency. |
|
34 </p> |
|
35 <p> |
|
36 Note: <code>DCodeSeg</code> is internal to Symbian OS |
|
37 </p> |
|
38 <code>7</code> |
|
39 <p> |
|
40 Not used. |
|
41 </p> |
|
42 <code>8</code> |
|
43 <p> |
|
44 This fault is raised when the thread that deals with raw hardware |
|
45 events, as generated by the hardware drivers of a pointer device, a keyboard |
|
46 etc., has terminated. The thread is referred to as the thread event hook. |
|
47 </p> |
|
48 <p> |
|
49 Note: |
|
50 </p> |
|
51 <p> |
|
52 The most common cause is the death of the window server |
|
53 "wserv". |
|
54 </p> |
|
55 <p> |
|
56 Raw hardware events are represented by |
|
57 <a href="../reference-cpp/E32_EKA2/TRawEventClass.html#%3a%3aTRawEvent" title="class TRawEvent"><code class="ApiItem">TRawEvent</code></a> objects. |
|
58 </p> |
|
59 <code>9</code> |
|
60 <p> |
|
61 This fault is raised when an attempt to allocate the buffer that is |
|
62 to contain raw hardware events (as represented by a set of |
|
63 <a href="../reference-cpp/E32_EKA2/TRawEventClass.html#%3a%3aTRawEvent" title="class TRawEvent"><code class="ApiItem">TRawEvent</code></a> objects), cannot be allocated. |
|
64 </p> |
|
65 <code>10-14</code> |
|
66 <p> |
|
67 Not used. |
|
68 </p> |
|
69 <code>15</code> |
|
70 <p> |
|
71 This fault is raised when a thread or process is panicked or |
|
72 terminated when one of the following is true: |
|
73 </p> |
|
74 <p> |
|
75 the kernel is locked. |
|
76 </p> |
|
77 <p> |
|
78 the current thread holds a fast mutex. |
|
79 </p> |
|
80 <code>16</code> |
|
81 <p> |
|
82 Not used. |
|
83 </p> |
|
84 <code>17</code> |
|
85 <p> |
|
86 Not used. |
|
87 </p> |
|
88 <code>18</code> |
|
89 <p> |
|
90 This fault is raised by internal functions, which as part of their |
|
91 implementation, fetch a <a href="../reference-cpp/E32_EKA2/DObjectClass.html#%3a%3aDObject" title="class DObject"><code class="ApiItem">DObject</code></a> based on the object type, |
|
92 a <code>TObjectType</code> type. |
|
93 </p> |
|
94 <p> |
|
95 The fault occurs when the value representing the object type lies |
|
96 outside the permitted values. |
|
97 </p> |
|
98 <p> |
|
99 The fault can also be raised by |
|
100 <a href="../reference-cpp/E32_EKA2/KernClass.html#%3a%3aKern%3a%3aObjectFromHandle%28%29" title="function Kern::ObjectFromHandle()"><code class="ApiItem">Kern::ObjectFromHandle()</code></a>. |
|
101 </p> |
|
102 <p> |
|
103 Note: |
|
104 <code class="ApiItem">TObjectType</code> is internal to |
|
105 Symbian OS. |
|
106 </p> |
|
107 <code>19</code> |
|
108 <p> |
|
109 This fault is raised by a kernel side session |
|
110 (<code>DSession</code>) object's destructor if that session has not been |
|
111 detached from the kernel side server (<code>DServer</code>) object by the time |
|
112 the destructor is called. |
|
113 </p> |
|
114 <p> |
|
115 Note: |
|
116 <code>DSession</code> and <code>DServer |
|
117 </code> are internal to Symbian OS. |
|
118 </p> |
|
119 <code>20</code> |
|
120 <p>This fault is raised in debug builds only. |
|
121 </p> |
|
122 <p> |
|
123 The fault is raised by <code>DSession::Send()</code> when an |
|
124 ASSERT, that expects a message to be free, fails. |
|
125 </p> |
|
126 <p> |
|
127 Note: |
|
128 <code>DSession</code> is internal to Symbian OS. |
|
129 </p> |
|
130 <code>21</code> |
|
131 <p> |
|
132 Not used. |
|
133 </p> |
|
134 <code>22</code> |
|
135 <p> |
|
136 This fault is raised by a kernel side session |
|
137 (<code>DSession</code>) object's destructor if there are still messages |
|
138 outstanding on that session by the time the destructor is called. |
|
139 </p> |
|
140 <p> |
|
141 Note: |
|
142 <code>DSession</code> is internal to Symbian OS. |
|
143 </p> |
|
144 <code>23</code> |
|
145 <p> |
|
146 Not used. |
|
147 </p> |
|
148 <code>24</code> |
|
149 <p> |
|
150 This fault is raised by a kernel side server (<code>DServer</code>) |
|
151 object's destructor if there are sessions still attached to that server by the |
|
152 time the destructor is called. |
|
153 </p> |
|
154 <p> |
|
155 Note: |
|
156 <code>DServer</code> is internal to Symbian OS. |
|
157 </p> |
|
158 <code>25</code> |
|
159 <p> |
|
160 This fault is raised by a kernel side server (<code>DServer</code>) |
|
161 object's destructor if that server still has messages that have been delivered |
|
162 but not yet accepted by the time the destructor is called. |
|
163 </p> |
|
164 <code>26</code> |
|
165 <p> |
|
166 This fault is raised by a kernel side server (<code>DServer</code>) |
|
167 object's <code>Close()</code> function if that server still has messages that |
|
168 have been delivered but not yet accepted. |
|
169 </p> |
|
170 <code>27</code> |
|
171 <p> |
|
172 This fault is raised by a kernel side session |
|
173 (<code>DSession</code>) object when the server calls its |
|
174 <code>ClosefromDisconnect()</code> function to indicate completion of the |
|
175 disconnection, and the session object's access count is not zero. |
|
176 </p> |
|
177 <p> |
|
178 Note: |
|
179 <code>DSession</code> is internal to Symbian OS. |
|
180 </p> |
|
181 <code>28</code> |
|
182 <p>This fault is raised in debug builds only.</p> |
|
183 <p> |
|
184 This fault is raised when a message is being freed and the message |
|
185 appears to belong to an unknown message pool. |
|
186 </p> |
|
187 <code>29</code> |
|
188 <p> |
|
189 This fault is raised by a kernel side session |
|
190 (<code>DSession</code>) object's destructor if there are still messages |
|
191 outstanding on that session by the time the destructor is called. |
|
192 </p> |
|
193 <p> |
|
194 Note: |
|
195 <code>DSession</code> is internal to Symbian OS. |
|
196 </p> |
|
197 <code>30-40</code> |
|
198 <p> |
|
199 Not used. |
|
200 </p> |
|
201 <code>41</code> |
|
202 <p> |
|
203 This fault is raised when the DFC that is used to restart the |
|
204 second absolute timer queue (<code>TSecondQ</code>) finds that the queue is not |
|
205 locked. |
|
206 </p> |
|
207 <code>42</code> |
|
208 <p> |
|
209 This fault is raised by the <a href="../reference-cpp/E32_EKA2/DLogicalChannelClass.html#%3a%3aDLogicalChannel" title="class DLogicalChannel"><code class="ApiItem">DLogicalChannel</code></a> |
|
210 destructor if there are outstanding messages by the time the destructor is |
|
211 called. |
|
212 </p> |
|
213 <code>43</code> |
|
214 <p> |
|
215 This fault is raised by a kernel side session |
|
216 (<code>DSession</code>) object's destructor if the object's access count and |
|
217 the total client access count are not zero by the time the destructor is |
|
218 called. |
|
219 </p> |
|
220 <p> |
|
221 Note: |
|
222 <code>DSession</code> is internal to Symbian OS. |
|
223 </p> |
|
224 <code>44</code> |
|
225 <p> |
|
226 This fault is raised when the kernel heap is being created and the |
|
227 specified initial size is less than or equal to the minimum value defined by |
|
228 <a href="../reference-cpp/E32_EKA2/e32const.hVariables.html#%3a%3aKMinHeapSize" title="field KMinHeapSize"><code class="ApiItem">KMinHeapSize</code></a>. |
|
229 </p> |
|
230 <code>45-47</code> |
|
231 <p> |
|
232 Not used. |
|
233 </p> |
|
234 <code>48</code> |
|
235 <p> |
|
236 This fault is raised if creation of the machine configuration mutex |
|
237 fails during initialisation of the RAM drive. |
|
238 </p> |
|
239 <code>49</code> |
|
240 <p> |
|
241 This fault is raised if creation of a new chunk for the internal |
|
242 RAM drive fails. |
|
243 </p> |
|
244 <code>50</code> |
|
245 <p> |
|
246 This fault is raised if creation of the microkernel fails. |
|
247 </p> |
|
248 <code>51</code> |
|
249 <p> |
|
250 This fault is raised if the 3rd phase initialisation of the kernel |
|
251 fails. |
|
252 </p> |
|
253 <code>52</code> |
|
254 <p> |
|
255 This fault is raised if the startup of kernel extensions fails. |
|
256 </p> |
|
257 <code>53-56</code> |
|
258 <p> |
|
259 Not used. |
|
260 </p> |
|
261 <code>57</code> |
|
262 <p> |
|
263 This fault is raised if initialisation of the RAM drive fails. |
|
264 </p> |
|
265 <code>58-62</code> |
|
266 <p> |
|
267 Not used. |
|
268 </p> |
|
269 <code>63</code> |
|
270 <p> |
|
271 This fault acts as a trap if a thread calls |
|
272 <a href="../reference-cpp/E32_EKA2/NKernClass.html#%3a%3aNKern%3a%3aThreadKill%28%29" title="function NKern::ThreadKill()"><code class="ApiItem">NKern::ThreadKill()</code></a> to terminate itself, and the call to |
|
273 that <a href="../reference-cpp/E32_EKA2/NKernClass.html#%3a%3aNKern%3a%3aThreadKill%28%29" title="function NKern::ThreadKill()"><code class="ApiItem">NKern::ThreadKill()</code></a>function returns. When a thread |
|
274 calls on itself, the call should not return. |
|
275 </p> |
|
276 <code>64</code> |
|
277 <p> |
|
278 This fault is raised if an attempt is made to set an invalid timer |
|
279 type (<code>TTimer::SetType()</code>). |
|
280 </p> |
|
281 <p> |
|
282 Note: |
|
283 <code>TTimer</code> is internal to Symbian OS. |
|
284 </p> |
|
285 <code>65</code> |
|
286 <p> |
|
287 The fault is raised when updating a tick timer queue, and the delta |
|
288 value is greater than the maximum permitted. |
|
289 </p> |
|
290 <code>66</code> |
|
291 <p>This fault is raised in debug builds only. |
|
292 </p> |
|
293 <p> |
|
294 The fault is raised when setting the thread (<code>DThread</code>) |
|
295 priority, and the priority value is not a valid value. |
|
296 </p> |
|
297 <p> |
|
298 Note: |
|
299 <code>DThread</code> is internal to Symbian OS. |
|
300 </p> |
|
301 <code>67</code> |
|
302 <p>This fault is raised in debug builds only. |
|
303 </p> |
|
304 <p> |
|
305 This fault is raised when a mutex (<code>DMutex</code>) is |
|
306 signalled (<code>DMutex::Signal()</code>) by the wrong thread. |
|
307 </p> |
|
308 <p> |
|
309 Note: |
|
310 <code>DMutex</code> is internal to Symbian OS. |
|
311 </p> |
|
312 <code>68</code> |
|
313 <p> |
|
314 This fault is raised in debug builds only. |
|
315 </p> |
|
316 <p> |
|
317 This fault is raised when a mutex (<code>DMutex</code>) is |
|
318 signalled (<code>DMutex::Signal()</code>) and the current thread |
|
319 (<code>DThread</code>) is not ready to run. |
|
320 </p> |
|
321 <p> |
|
322 Note: |
|
323 <code>DMutex</code> and <code>DThread</code> are |
|
324 internal to Symbian OS. |
|
325 </p> |
|
326 <code>69</code> |
|
327 <p> |
|
328 This fault is raised in debug builds only. |
|
329 </p> |
|
330 <p> |
|
331 This fault is raised when a wait is called on a mutex |
|
332 (<code>DMutex::Wait()</code>), and the current thread (<code>DThread</code>) is |
|
333 not ready to run. |
|
334 </p> |
|
335 <p> |
|
336 Note: |
|
337 <code>DMutex</code> and <code>DThread</code> are |
|
338 internal to Symbian OS. |
|
339 </p> |
|
340 <code>70</code> |
|
341 <p> |
|
342 This fault is raised in debug builds only. |
|
343 </p> |
|
344 <p> |
|
345 This fault is raised when a wait is called on a mutex |
|
346 (<code>DMutex::Wait()</code>), and the current thread (<code>DThread</code>) is |
|
347 blocked, waiting on another object. |
|
348 </p> |
|
349 <p> |
|
350 Note: |
|
351 <code>DMutex</code> and <code>DThread</code> are |
|
352 internal to Symbian OS. |
|
353 </p> |
|
354 <code>71</code> |
|
355 <p> |
|
356 This fault is raised in debug builds only. |
|
357 </p> |
|
358 <p> |
|
359 The fault is raised when a semaphore (<code>DSemaphore</code>) is |
|
360 signalled and the current thread (<code>DThread</code>) is not ready to run. |
|
361 </p> |
|
362 <p> |
|
363 Note: |
|
364 <code>DSemaphore</code> and <code>DThread |
|
365 </code> are internal to Symbian OS. |
|
366 </p> |
|
367 <code>72</code> |
|
368 <p> |
|
369 This fault is raised in debug builds only. |
|
370 </p> |
|
371 <p> |
|
372 The fault is raised when a wait is called on a semaphore |
|
373 (<code>DSemaphore::Wait()</code>) and the current thread (<code>DThread</code>) |
|
374 is not ready to run. |
|
375 </p> |
|
376 <p> |
|
377 Note: |
|
378 <code>DSemaphore</code> and <code>DThread |
|
379 </code> are internal to Symbian OS. |
|
380 </p> |
|
381 <code>73</code> |
|
382 <p> |
|
383 This fault is raised in debug builds only. |
|
384 </p> |
|
385 <p> |
|
386 This fault is raised when a wait is called on a semaphore |
|
387 (<code>DSemaphore::Wait()</code>), and the current thread |
|
388 (<code>DThread</code>) is blocked, waiting on another object. |
|
389 </p> |
|
390 <p> |
|
391 Note: |
|
392 <code>DSemaphore</code> and <code>DThread |
|
393 </code> are internal to Symbian OS. |
|
394 </p> |
|
395 <code>74</code> |
|
396 <p> |
|
397 This fault is raised in debug builds only. |
|
398 </p> |
|
399 <p> |
|
400 This fault is raised during kernel heap manipulation. |
|
401 </p> |
|
402 <code>75</code> |
|
403 <p> |
|
404 This fault is raised by the <code>DLibrary</code> destructor if the |
|
405 number of user references on the library, which is equal to the number of |
|
406 handles on the library opened by the process or by any of its threads, is not |
|
407 zero. |
|
408 </p> |
|
409 <p> |
|
410 Note: |
|
411 <code>DLibrary</code> is internal to Symbian OS. |
|
412 </p> |
|
413 <code>76</code> |
|
414 <p> |
|
415 This fault is raised by <code>DProcess::Release()</code> if the |
|
416 number of dynamically loaded code segments attached to this process is not |
|
417 zero. |
|
418 </p> |
|
419 <p> |
|
420 Note: the code segments referred to are only those |
|
421 corresponding to DLLs that have been explicitly loaded. |
|
422 </p> |
|
423 <p> |
|
424 Note: |
|
425 <code>DProcess</code> is internal to Symbian OS. |
|
426 </p> |
|
427 <code>77</code> |
|
428 <p> |
|
429 This fault is raised during the creation of a code segment if a |
|
430 process data address is invalid. |
|
431 </p> |
|
432 <code>78</code> |
|
433 <p> |
|
434 This fault is raised in debug builds only. |
|
435 </p> |
|
436 <p> |
|
437 This fault is raised when attaching a process to a code segment |
|
438 (<code>DCodeSeg::SetAttachProcess()</code>). |
|
439 </p> |
|
440 <p> |
|
441 The fault occurs if the code segment's <code>iExeCodeSeg</code> |
|
442 field already points to some process's EXE code segment. |
|
443 </p> |
|
444 <p> |
|
445 Note: |
|
446 <code>DCodeSeg</code> and <code>DProcess |
|
447 </code> are internal to Symbian OS. |
|
448 </p> |
|
449 <code>79</code> |
|
450 <p> |
|
451 This fault is raised when attaching a process to a code segment |
|
452 (<code>DCodeSeg::SetAttachProcess()</code>). |
|
453 </p> |
|
454 <p> |
|
455 The fault occurs if a process (<code>DProcess</code>) has already |
|
456 been attached to this code segment. |
|
457 </p> |
|
458 <p> |
|
459 Note: |
|
460 <code>DCodeSeg</code> and <code>DProcess |
|
461 </code> are internal to Symbian OS. |
|
462 </p> |
|
463 <code>80</code> |
|
464 <p> |
|
465 This fault is raised when an essential system thread terminates. |
|
466 Such a thread is flagged as being permanent |
|
467 (<code>KThreadFlagSystemPermanent</code>). |
|
468 </p> |
|
469 <code>81</code> |
|
470 <p> |
|
471 This fault is raised in debug builds only. |
|
472 </p> |
|
473 <p> |
|
474 This fault is raised if creation of the just-in-time handler |
|
475 (<code>DJitCrashHandler</code>) fails during the third phase of system |
|
476 initialisation (<a href="../reference-cpp/E32_EKA2/AsicClass.html#%3a%3aAsic%3a%3aInit3%28%29" title="function Asic::Init3()"><code class="ApiItem">Asic::Init3()</code></a>). |
|
477 </p> |
|
478 <p> |
|
479 Note: |
|
480 <code>DJitCrashHandler</code> is internal to |
|
481 Symbian OS. |
|
482 </p> |
|
483 <code>82</code> |
|
484 <p> |
|
485 Not used. |
|
486 </p> |
|
487 <code>83</code> |
|
488 <p> |
|
489 This fault is raised in debug builds only. |
|
490 </p> |
|
491 <p> |
|
492 This fault is raised by <a href="../reference-cpp/E32_EKA2/KernClass.html#%3a%3aKern%3a%3aProcessFromId%28%29" title="function Kern::ProcessFromId()"><code class="ApiItem">Kern::ProcessFromId()</code></a> |
|
493 if the process container mutex is not held by the current thread. |
|
494 </p> |
|
495 <code>84</code> |
|
496 <p> |
|
497 This fault is raised in debug builds only. |
|
498 </p> |
|
499 <p> |
|
500 This fault is raised by <a href="../reference-cpp/E32_EKA2/KernClass.html#%3a%3aKern%3a%3aThreadFromId%28%29" title="function Kern::ThreadFromId()"><code class="ApiItem">Kern::ThreadFromId()</code></a> |
|
501 if the thread container mutex is not held by the current thread. |
|
502 </p> |
|
503 <code>85</code> |
|
504 <p> |
|
505 Not used. |
|
506 </p> |
|
507 <code>86</code> |
|
508 <p> |
|
509 Not used. |
|
510 </p> |
|
511 <code>87</code> |
|
512 <p> |
|
513 This fault is raised in debug builds only. |
|
514 </p> |
|
515 <p> |
|
516 This fault is raised when an access-counted event handler callback |
|
517 object, <a href="../reference-cpp/E32_EKA2/DKernelEventHandlerClass.html#%3a%3aDKernelEventHandler" title="class DKernelEventHandler"><code class="ApiItem">DKernelEventHandler</code></a>, is created with a NULL |
|
518 <code class="ApiItem">TCallback</code> object. |
|
519 </p> |
|
520 <code>88</code> |
|
521 <p> |
|
522 This fault is raised in debug builds only. |
|
523 </p> |
|
524 <p> |
|
525 This fault is raised if attempting to wait on a mutex |
|
526 (<code>DMutex::Wait()</code>) that has been created with an order value that |
|
527 violates the rules that prevent deadlock prevention. |
|
528 </p> |
|
529 <code>89</code> |
|
530 <p> |
|
531 This fault is raised in debug builds only. |
|
532 </p> |
|
533 <p> |
|
534 This fault is raised when waiting on a condition variable object |
|
535 (<code>DCondVar</code>) if the current thread is not ready to run. |
|
536 </p> |
|
537 <p> |
|
538 Note: |
|
539 <code>DCondVar</code> is internal to Symbian OS. |
|
540 </p> |
|
541 <code>90</code> |
|
542 <p> |
|
543 This fault is raised in debug builds only. |
|
544 </p> |
|
545 <p> |
|
546 This fault is raised when waiting on a condition variable object |
|
547 (<code>DCondVar</code>) if the current (Nanokernel) thread is not in a |
|
548 recognised state. |
|
549 </p> |
|
550 <p> |
|
551 Note: |
|
552 <code>DCondVar</code> is internal to Symbian OS. |
|
553 </p> |
|
554 <code>91</code> |
|
555 <p> |
|
556 This fault is raised in debug builds only. |
|
557 </p> |
|
558 <p> |
|
559 This fault is raised when waiting on a condition variable object |
|
560 (<code>DCondVar</code>) if the current (Symbian OS) thread is not in a |
|
561 recognised state. |
|
562 </p> |
|
563 <p> |
|
564 Note: |
|
565 <code>DCondVar</code> is internal to Symbian OS. |
|
566 </p> |
|
567 <code>92</code> |
|
568 <p> |
|
569 This fault is raised when attempting to unblock a thread in a call |
|
570 to <code>DCondVar::UnBlockThread()</code> if the thread state indicates that it |
|
571 is not suspended waiting on the <code>DCondVar</code> object. |
|
572 </p> |
|
573 <code>93</code> |
|
574 <p> |
|
575 Not used. |
|
576 </p> |
|
577 <code>94</code> |
|
578 <p> |
|
579 This fault is raised in a call to |
|
580 <a href="../reference-cpp/E32_EKA2/KernClass.html#%3a%3aKern%3a%3aThreadKill%28%29" title="function Kern::ThreadKill()"><code class="ApiItem">Kern::ThreadKill()</code></a> if an attempt is being made to kill a |
|
581 non-user thread that is also not the currently running thread. </p> |