Re: remote kernel debugging over a network

On Sat, 05 Jun 2010 16:01:01 EDT der Mouse
<mouse%Rodents-Montreal.ORG@localhost> wrote:
> > I have to make a decision about the protocol that will be used for
> > remote kernel debugging.
>
> > My question is: Should I go with a custom protocol (+ a daemon that
> > proxies to TCP), or should I go with TCP directly?
>
> My opinion, which is probably worth approximately what you paid for it:
> custom protocol built directly atop Ethernet (ie, not IP-based).
At a previous company (about 13 years back) this is what we
did. The details are hazy now but we didn't change the gdb
remote protocol; we just emulated a serial link that
sent/recvd these packets. We used an ethernet multicast
address so you could debug a kernel from any local machine --
this was in a test lab network so security was not an issue
but containment was.
The key consideration for us was that debugging must be
possible even when most things in kernel could be broken.
Such a low level interface meant only one ethernet driver,
its interrupt routine and a bit of glue code had to be
working. TCP would require far too many things to work (or a
separate stack with its own set of problems). Emulating a
console meant we could switch between kdb and gdb as well.