This is the mail archive of the gdb@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Interrupt packets in the remote protocol


Hello!

I'm developing a binary translator that translates MIPS binaries into
Java bytecode [1], which enables C/C++ programs to be executed on J2ME
platforms. To get good debugging support, I'm developing a GDB server
that connects to the Java JDB debugger and "translates" commands in the
GDB remote protocol to JDB commands.

The server mostly works now except for interrupts (Ctrl-C in GDB). It looks
like the interrupt packets (plain 0x03) are never sent. A log with
'set debug remote 1' looks as follows:

   (gdb) c
   Continuing.
   Sending packet: $m1000000,4#1e...Ack
   Packet received: 3c020000
   Sending packet: $Z0,1000004,4#6b...Ack
   Packet received: OK
   Packet Z0 (software-breakpoint) is supported
   Sending packet: $vCont?#49...Ack
   Packet received: vCont;c
   Packet vCont (verbose-resume) is NOT supported
   Sending packet: $Hc0#db...Ack
   Packet received:
   Sending packet: $c#63...Ack
   Packet received: T0525:01000004;
   Sending packet: $z0,1000004,4#8b...Ack
   Packet received: OK
   Sending packet: $Z0,1000000,4#67...Ack
   Packet received: OK
   Sending packet: $Hc0#db...Ack
   Packet received:
   Sending packet: $c#63...Ack

   remote_interrupt called
   remote_stop called

My server has two threads, one that receives messages from GDB and one that
handles packets, controls JDB and sends replies back to GDB. The "receiver"
thread is waiting for messages when Ctrl-C is sent in GDB.

Did I miss some GDB configuration option or some other obvious thing?

--
// Simon

[1] http://cibyl.googlecode.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]