Remote stub can't single-step, how to tell GDB?

Deepak Saxena
2004-08-12T21:50:00Z

Hello,

I am working on porting the existing ARM KGDB stub into the
grand-unified-kgdb project (http://kgdb.sf.net) and am looking
for some info on how to cleanup our single-step handling. For
the existing stub we basically took the get_next_pc() code
from gdb and put it in the kgdb-stub so that we can execute
single-steps in the stub itself. When we receive an 's' command,
we call get_next_pc() and stuff the breakpoint at that address.
IMHO, having this in the kernel is overkill and skimming the gdb src,
I am guessing there is away to just force the user's client to do this,
but I am not sure how. In arm-tdep.c, I see the following comment that
makes me wonder if right now I have no choice but handle single-step
in the kernel stub:

/* Single stepping. */
/* XXX For an RDI target we should ask the target if it can single-step. */
set_gdbarch_software_single_step (gdbarch, arm_software_single_step);

Any pointers appreciated.

Tnx,
~Deepak

--
Deepak Saxena - dsaxena at plexity dot net - http://www.plexity.net/

"Unlike me, many of you have accepted the situation of your imprisonment and
will die here like rotten cabbages." - Number 6