public inbox for gdb@sourceware.org
 help / color / mirror / Atom feed
* Re: ReBranch - a record-replay debugging tool
@ 2011-06-09 16:39 Nan Wang
  2011-06-09 19:20 ` paawan oza
  2011-06-10  5:51 ` Yao Qi
  0 siblings, 2 replies; 23+ messages in thread
From: Nan Wang @ 2011-06-09 16:39 UTC (permalink / raw)
  To: Pedro Alves, gdb

What I mean "control-flow only debugging" is:

Sometimes user only use GDB's control-flow functions, such as 'c', 'b',
'n', 's' ... to watch how the program get to the bug. He or she doesn't
care the variable name, the memory and some data-flow information.

ReBranch demands "control-flow only debugging" because it only records
every branch instruction. In current implementation (the modified
version of gdbserver), the replayer still need to create a process and
use ptrace to control it. When data-flow have error (caused by data-race
in multi threading situation), the ptraced process will generate
segfault for every instructions, which slows down the performance.

ReBranch have a GUI replayer -- ReBranchK -- which is a simple
control-flow-only debugging tool. ReBranchK doesn't really create the
process and debug it. It 'executes' the program virtually by reads the
log and shows corresponding source code. It implements 's', 'b' and 'c'
command. However, when writing ReBranchK, I found that, without stack
information, many useful control-flow command such as 'n' and 'bt' are
hard to be implemented. Therefore, I hope someone help me to put this
"control-flow only debugging" function into gdbserver.
> Can you clarify what do you mean by "control-flow only debugging"?
>
> (Note: I haven't had the time yet to read your document on ReBranch,
> so I don't really know how it works or why would you need gdbserver
> for replay)
>

^ permalink raw reply	[flat|nested] 23+ messages in thread
* Re: ReBranch - a record-replay debugging tool
@ 2011-06-13  1:57 Robert Bu
  2011-06-13  2:03 ` pi3orama
  0 siblings, 1 reply; 23+ messages in thread
From: Robert Bu @ 2011-06-13  1:57 UTC (permalink / raw)
  To: pi3orama; +Cc: gdb

Hi,

For data flow, recording syscall is not enough. There may be IO interaction.
I think your current implementation looks like a PC tracing, replaying tool.

Robert

>From: pi3orama <pi3orama@gmail.com>
>To: paawan oza <paawan1982@yahoo.com>
>Date: Fri, 10 Jun 2011 17:34:23 +0800
>Subject: Re: ReBranch - a record-replay debugging tool
>In multi-thread situation, nearly all data-flow information is lost
>because of propagation. However, in single thread situation, signal
>processing and system call results are all recorded and replayed, all
>data-flow info can still be restored.
>
>> ok got that point.
>> so in conclusion, any data-flow info which is reponsible for crash may not be
>> caught by rebranch, or there is a way ?
>>
>> Regards,
>> Oza.

^ permalink raw reply	[flat|nested] 23+ messages in thread
[parent not found: <bcaec5395f2aa367da04a5462782@google.com>]
[parent not found: <1307602807.17016.ezmlm@sourceware.org>]

end of thread, other threads:[~2011-06-13  2:03 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-06-09 16:39 ReBranch - a record-replay debugging tool Nan Wang
2011-06-09 19:20 ` paawan oza
     [not found]   ` <bcaec5215b03b867ea04a5500b35@google.com>
2011-06-10  1:55     ` pi3orama
2011-06-10  8:04       ` paawan oza
2011-06-10  8:15         ` pi3orama
2011-06-10  9:14           ` paawan oza
2011-06-10  9:36             ` pi3orama
2011-06-10  5:51 ` Yao Qi
2011-06-10  6:39   ` pi3orama
  -- strict thread matches above, loose matches on Subject: below --
2011-06-13  1:57 Robert Bu
2011-06-13  2:03 ` pi3orama
     [not found] <bcaec5395f2aa367da04a5462782@google.com>
2011-06-09 12:26 ` Pedro Alves
2011-06-09 12:54   ` pi3orama
2011-06-09 14:37   ` Joel Brobecker
2011-06-09 14:51     ` Pedro Alves
     [not found]       ` <BANLkTi=Mk0-PXb=7m0RZvEt7jegz17JXHw@mail.gmail.com>
2011-06-09 16:11         ` pi3orama
2011-06-09 16:20         ` Pedro Alves
     [not found] <1307602807.17016.ezmlm@sourceware.org>
2011-06-09  7:23 ` pi3orama
2011-06-09  9:27   ` Pedro Alves
2011-06-09 10:32     ` paawan oza
2011-06-09 13:05       ` pi3orama
     [not found]     ` <4DF0A729.4070106@gmail.com>
2011-06-09 11:23       ` Pedro Alves
2011-06-09 12:06         ` pi3orama

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).