md command - kdbv4.3
Keith Owens
kaos at sgi.com
Mon Oct 6 02:18:21 PDT 2003
On Mon, 06 Oct 2003 13:58:08 +0530,
Sachin Sant <sachinp at in.ibm.com> wrote:
>
>When I dump out the contents of esp and ebp for a certain pid I am
>seeing all zeroes. Is this a normal behaviour?
>
>I am using 2.4.21 + kdb-v4.3 on a 4 way ia32 system.
>
>[3]kdb> pid 888
>KDB current process is cron(pid=888)
>[3]kdb> rd u
>eax = 0x000000a2 ebx = 0xbfffe038 ecx = 0xbfffe038 edx = 0x4013cc90
>esi = 0xbfffe150 edi = 0xbfffe038 esp = 0xbfffe00c eip = 0x400c1d01
>ebp = 0xbfffe1e8 xss = 0x0000002b xcs = 0x00000023 eflags = 0x00000207
>xds = 0x4014002b xes = 0x0000002b origeax = 0x000000a2 ®s =
>0xc3d65fc4
>[3]kdb> md 0xbfffe00c
>0xbfffe00c 00000000 00000000 00000000 00000000 ................
That is not expected. kdb_getarea() is claiming that it got data but
the result is zero. It is probably a bug with getting the pages from
user space, although I cannot see anything wrong with the code.
Can you add some debug statements to these routines to track their
inputs and outputs.
include/asm-i386/kdb.h __kdba_getarea_size
kdb/kdbsupport.c kdb_getuserarea_size
kdb/kdbsupport.c kdb_get_one_user_page
mm/memory.c kdb_follow_page
Use "if (KDB_DEBUG(BT)) kdb_printf(...);" so the lines are only printed
when the kdb BT debug flag is on. "set KDBDEBUG 1" before issuing the
md commands, then "set KDBDEBUG 0" afterwards. Crude but it works.
More information about the kdb
mailing list