summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2013-03-22 19:51:37 +0100
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2013-03-22 19:51:37 +0100
commit6d4c2caf968c838c31dc13a1bae121c85a2e294d (patch)
treebc82032e45efbbd396ec4dda3d5b22ab67c09426
parentd166bfaaa3ddf8b83b5cc6bde62f8872e6a80c82 (diff)
Add a Faq about the kernel debugging prompt
-rw-r--r--faq/issues/got_a_db_prompt.mdwn28
1 files changed, 28 insertions, 0 deletions
diff --git a/faq/issues/got_a_db_prompt.mdwn b/faq/issues/got_a_db_prompt.mdwn
new file mode 100644
index 00000000..0835520e
--- /dev/null
+++ b/faq/issues/got_a_db_prompt.mdwn
@@ -0,0 +1,28 @@
+[[!meta copyright="Copyright © 2013 Free Software Foundation, Inc."]]
+
+[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable
+id="license" text="Permission is granted to copy, distribute and/or modify this
+document under the terms of the GNU Free Documentation License, Version 1.2 or
+any later version published by the Free Software Foundation; with no Invariant
+Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license
+is included in the section entitled
+[[GNU Free Documentation License|/fdl]]."]]"""]]
+
+[[!meta title="I've just gotten a db> prompt"]]
+
+Something bad happened in the kernel (think of it as the equivalent of the Linux
+Oops). The `db>` prompt is actually the kernel debugger. You can then type the
+`trace` command, which will bring you something like:
+
+ 0x8007cf1(8088488,5e,40000008,2aa008,0)
+ 0x80071bc(0,0,0,0,0)
+ 0x8006831(24fe00,2000,b,800,0)
+
+Which is actually the function call trace, which can be decyphered by using:
+
+ $ addr2line -i -f -e /boot/gnumach 0x8007cf1 0x80071bc 0x8006831
+
+You can then send us the result of the `trace` and the `addr2line`, as well as
+the exact version of the gnumach kernel you were running, for further
+investigation. [[More information about the gnumach
+debugger|microkernel/mach/gnumach/debugging]] is available.