On Mon, 06 Oct 2003 13:58:08 +0530, Sachin Sant <[EMAIL PROTECTED]> 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.
