aboutsummaryrefslogtreecommitdiffstats
path: root/tools/debugger
diff options
context:
space:
mode:
authorkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>2005-09-19 15:43:38 +0000
committerkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>2005-09-19 15:43:38 +0000
commit580c309e4f30c80f2dccdbe10058566eae2695e7 (patch)
tree4bcf9fcd787fb18099526f03eb1d10e5636e899d /tools/debugger
parente13a4e8cc38eb31ef9a33dc69af34d007970511e (diff)
downloadxen-580c309e4f30c80f2dccdbe10058566eae2695e7.tar.gz
xen-580c309e4f30c80f2dccdbe10058566eae2695e7.tar.bz2
xen-580c309e4f30c80f2dccdbe10058566eae2695e7.zip
Better gdb server documentation.
Diffstat (limited to 'tools/debugger')
-rw-r--r--tools/debugger/gdb/README17
1 files changed, 14 insertions, 3 deletions
diff --git a/tools/debugger/gdb/README b/tools/debugger/gdb/README
index fa36ed6d7c..43f1e60fef 100644
--- a/tools/debugger/gdb/README
+++ b/tools/debugger/gdb/README
@@ -2,17 +2,28 @@
DomU GDB server for 32-bit (PAE and non-PAE) systems
----------------------------------------------------
-To build:
+Lines marked below with [*] are optional, if you want full
+source-level debugging of your kernel image.
+
+To build the GDB server:
1. Run ./gdbbuild from within this directory.
2. Copy ./gdb-6.2.1-linux-i386-xen/gdb/gdbserver/gdbserver-xen
to your test machine.
-To debug a running domain:
+To build a debuggable guest kernel image:
+ 1. cd linux-2.6.12-xenU
+ 2. ARCH=xen make menuconfig
+ 3. From within the configurator, enable the following options:
+ # Kernel hacking -> Compile the kernel with debug info [*]
+ -> Compile the kernel with frame pointers
+ 4. (Re)build and (re)install your xenU kernel image.
+
+To debug a running guest:
1. Use 'xm list' to discover its domain id ($domid).
2. Run 'gdbserver-xen 127.0.0.1:9999 --attach $domid'
3. Run 'gdb /path/to/vmlinux-syms-2.6.xx-xenU'
4. From within the gdb client session:
+ # directory /path/to/linux-2.6.xx-xenU [*]
# target remote 127.0.0.1:9999
# bt
# disass
- 5. And so on...