On Mon, 15 Dec 2003 16:40:30 -0800,
"Bruce Edge" <[EMAIL PROTECTED]> wrote:
>When I drop into kdb and do an 'sr c', I do not get that message:
As expected.
>I get it when I load a module that does a divide by zero:
>Code: f7 fb 89 c1 a1 10 c3 d2 c2 8b 00 83 e0 0f 83 f8 03 76 23 83=20
>This kernel supports KDB but LKCD was invoked directly, not via KDB.
>Falling back to the old and broken LKCD method of getting data from all cpus,
>do not be surprised if LKCD hangs.
You have a misapplied patch to arch/i386/kernel/traps.c. It is calling
lkcd before kdb. die() in arch/i386/kernel/traps.c should look like this.
void die(const char * str, struct pt_regs * regs, long err)
{
console_verbose();
spin_lock_irq(&die_lock);
bust_spinlocks(1);
handle_BUG(regs);
printk("%s: %04lx\n", str, err & 0xffff);
show_registers(regs);
bust_spinlocks(0);
spin_unlock_irq(&die_lock);
#ifdef CONFIG_KDB
kdb_diemsg = str;
kdb(KDB_REASON_OOPS, err, regs);
#endif /* CONFIG_KDB */
dump((char *)str, regs);
do_exit(SIGSEGV);
}
Note that dump() is called after kdb.
Use http://oss.sgi.com/ecartis to modify your settings or to unsubscribe.