Subject: Re: remote kernel debugging - need some clarification
To: Matthias Drochner <drochner@zelux6.zel.kfa-juelich.de>
From: Chris G. Demetriou <cgd@CS.cmu.edu>
List: tech-kern
Date: 02/03/1997 16:52:49
> My questions in particular:
> 1. A couple of ports (eg hp300, sun) use a protocol
> which is completely different from the original
> gdb one. Why? Are there historical reasons?
> Which debugger hangs on the other side?
GDB, with special hacks from LBL.
This is historical; this protocol was what was used by 4.4BSD-Lite,
etc., on those systems.
> 2. ipkdb is again different - where does this protocol
> come from?
Wolfgang Solfrank invented it, because (for whatever reason) he didn't
like the gdb-over-ether protocol.
> 3. Why do these ports attach the debugger only at
> autoconfiguration time? Many interesting things can
> happen before... Or am I missing something?
the sparc and hp300 attach kgdb earlier than that, i thought.
traditionally, it's happened 'at the earliest possible opportunity.'
I'm not sure what ipkdb does, but if it attaches only when its device
is attached that's broken.
> 4. Are there solutions for a reasonable coexistence
> of DDB and KGDB?
Well, them seem mutually exclusive (what does it mean to be using both
at the same time)?
> 5. There are #ifdef KGDB stubs in i386/locore.s,
> i386/machdep.c and isa/com.c. Has there been a
> kgdb implementation in former times, and do they
> serve any purpose now?
Those hooks came from Net2/4.4-Lite, if i recall. they're currently
not useful.
In the long term, i'd say that unless there's a very strong technical
reason to _not_ go with the standard GDB protocols for serial and
ethernet debugging, we should go with them. Last i heard, there were
non-GPL'd stubs for them...
cgd