On Wed, Jan 21, 2004 at 10:23:12PM +0530, Amit S. Kale wrote:
Hi,
Here it is: ppc kgdb from timesys kernel is available at
http://kgdb.sourceforge.net/kgdb-2/linux-2.6.1-kgdb-2.1.0.tar.bz2
This is my attempt at extracting kgdb from TimeSys kernel. It works well in TimeSys kernel, so blame me if above patch doesn't work.
Okay, here's my first patch against this.
===== kernel/kgdbstub.c 1.1 vs edited =====
--- 1.1/kernel/kgdbstub.c Wed Jan 21 10:13:17 2004
+++ edited/kernel/kgdbstub.c Wed Jan 21 10:53:38 2004
@@ -1058,9 +1058,6 @@
kgdb_serial->write_char('+');
linux_debug_hook = kgdb_handle_exception;
-
- if (kgdb_ops->kgdb_init)
- kgdb_ops->kgdb_init();
/* We can't do much if this fails */
register_module_notifier(&kgdb_module_load_nb);
@@ -1104,6 +1101,11 @@
if (!kgdb_enter) {
return;
}
+
+ /* Let the arch do any initalization it needs to */
+ if (kgdb_ops->kgdb_init)
+ kgdb_ops->kgdb_init();
+
if (!kgdb_serial) {
printk("KGDB: no gdb interface available.\n"
"kgdb can't be enabled\n");
I'm not sure why you were calling the arch-specific init so late in the
process, but since it's a nop on both i386 and x86_64 (so perhaps it
should be removed for both of these?), this change doesn't matter to
them. But it does make the PPC code cleaner, IMHO.