problems debugging an uml skas kernel with gdb
marco ghidinelli
marcogh@linux.it
Wed Jun 8 12:35:00 GMT 2005
hello,
i've problems debugging a UML SKAS kernel.
the host is an x86 kernel 2.6.12-rc4-skas3-v9-pre4
the guest is a kernel 2.6.12-rc4.
GNU gdb 6.3.50.20050606-cvs,
gcc version 3.3.5 (Debian 1:3.3.5-8ubuntu2)
the problems are:
1) a pointer to a struct was not seen by the debugger:
example session:
Breakpoint 4, yoghi_init (sch=0x9d1b830, opt=0x9d1b400)
at net/sched/sch_yoghi.c:235
235 printk(KERN_DEBUG "Yoghi 0.0.3 Initiaziled\n");
(gdb) n
Yoghi 0.0.3 Initiaziled
236 if(q != NULL)
(gdb) n
237 printk(KERN_DEBUG "yoghi_init: q =
0x%x\n",(u32)q);
(gdb) n
yoghi_init: q = 0x9d1b480
238 return 0;
(gdb) p q
No symbol "q" in current context.
this is quite annoying but i can get my info in another way:
(gdb) p (struct yoghi_sched_data)*0x9d1b480
2) sometimes the debugger get lost:
Breakpoint 3, yoghi_bind (sch=0xa8bcf20, parent=0, classid=176934688)
at net/sched/sch_yoghi.c:271
271 return yoghi_get(sch, classid);
(gdb) s
yoghi_get (sch=0x10003, classid=65539) at net/sched/sch_yoghi.c:257
note that sch was changed!!
and sometimes it get completly lost:
Breakpoint 1, yoghi_get (sch=0x10013, classid=65555)
at net/sched/sch_yoghi.c:259
259 u32 band = TC_H_MIN(classid);
(gdb) n
261 printk(KERN_DEBUG "yoghi_get: classid = %d ; band = %d ;
band2 = %d\n",classid,band,band2);
(gdb) p band
$8 = 19
(gdb) n
yoghi_get: classid = 65555 ; band = 19 ; band2 = 19
262 if (band -1 > q->bands)
(gdb) n
263 return 0; /* means not found */
(gdb) n
265 }
(gdb) n
0x0a8846d2 in ?? ()
(gdb) bt
#0 0x0a8846d2 in ?? ()
#1 0x09d1b000 in ?? ()
#2 0x00010013 in ?? ()
#3 0x00010013 in ?? ()
#4 0x00000000 in ?? ()
bye!
More information about the Gdb
mailing list