This is the mail archive of the gdb-patches@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]

Re: [RFA] Reverse debugging, part 1/3: target interface


Daniel Jacobowitz wrote:

With that fixed I can try it:

(gdb) tar rem :1234
Remote debugging using :1234
0x00002aaaaaaaba80 in ?? ()
(gdb) rsi
0x00002aaaaaaaba80 in ?? ()
(gdb)
0x00002aaaaaaaba83 in ?? ()

OK, that's two bugs.  One is the vCont bug I mentioned in another
message; it's stepping forward instead of backwards.  The other has
nothing to do with this at all; apparently PTRACE_STEP isn't working
for the first instruction in the program and we're taking two steps to
go one instruction.  OK, let's avoid the vCont bug and try again:

(gdb) set remote verbose-resume-packet 0
(gdb) rsi
Sending packet: $m2aaaaaab7320,1#70...Ack
Packet received: f3
Sending packet: $M2aaaaaab7320,1:cc#50...Ack
Packet received: OK
Sending packet: $Hc0#db...Ack
Packet received: E01
Sending packet: $bs#d5...Ack
Packet received:
warning: Invalid remote reply:
*hang*

It thinks that the attempt to step has succeeded and that the program
is now running.  That's pretty messy failing.

Agreed, of course. Well, this code in remote_wait...


1.1 (shebs 16-Apr-99):      default:
1.1 (shebs 16-Apr-99):        warning ("Invalid remote reply: %s", buf);
1.1 (shebs 16-Apr-99):        continue;
1.1 (shebs 16-Apr-99):      }

*... has been essentially untouched since the public repository was
created.  I could trace it back further, but my gut feeling is that
it is basically untested.  I mean, if we say "continue" here,
of course it's going to hang...  we've just consumed the target's
reply, so it's not going to send us anything else.  Generally, you
send one command, you get one reply.

My inclination is to call error here, instead of continue.
But of course I know of no way to test the effects, except
for the experiment you've just done.

How does that strike you?



* Of course the code is not really Stan's -- he just created the repository.


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