From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 26468 invoked by alias); 9 Jun 2011 07:23:42 -0000 Received: (qmail 26458 invoked by uid 22791); 9 Jun 2011 07:23:40 -0000 X-SWARE-Spam-Status: No, hits=-2.6 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,RFC_ABUSE_POST,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: sourceware.org Received: from mail-pw0-f41.google.com (HELO mail-pw0-f41.google.com) (209.85.160.41) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Thu, 09 Jun 2011 07:23:15 +0000 Received: by pwi12 with SMTP id 12so735451pwi.0 for ; Thu, 09 Jun 2011 00:23:15 -0700 (PDT) Received: by 10.142.3.39 with SMTP id 39mr59856wfc.138.1307604195326; Thu, 09 Jun 2011 00:23:15 -0700 (PDT) Received: from [10.5.0.40] ([159.226.43.45]) by mx.google.com with ESMTPS id d15sm1436777wfl.18.2011.06.09.00.23.13 (version=SSLv3 cipher=OTHER); Thu, 09 Jun 2011 00:23:14 -0700 (PDT) Message-ID: <4DF0748B.2060703@gmail.com> Date: Thu, 09 Jun 2011 07:23:00 -0000 From: pi3orama User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.17) Gecko/20110518 Lightning/1.0b3pre Thunderbird/3.1.10 MIME-Version: 1.0 To: gdb@sourceware.org Subject: ReBranch - a record-replay debugging tool References: <1307602807.17016.ezmlm@sourceware.org> In-Reply-To: <1307602807.17016.ezmlm@sourceware.org> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-IsSubscribed: yes Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org X-SW-Source: 2011-06/txt/msg00042.txt.bz2 Hi, I developed a new record-replay tool -- ReBranch (http://code.google.com/p/rebranch/), which focus on debugging non-deterministic bugs. ReBranch can record the outgoing addresses of every branch instructions, and recreate the whole control flow when debugging. I have use it to fix some bugs in real open source projects such as lighttpd and memcached. Unfortunately, few people knows this project at google code, so nearly no one uses it. I know that GDB has its own record-replay. However, I still believe ReBranch is useful: ReBranch focus on recording in production systems, its record performance is better than GDB's recording, it can record whole program path (GDB can only record part of it), and most important, ReBranch can be used in multi-threading programs. I send this mail because I eagerly expect people to use my tool on their developing process, and help me to improve it. And also, I want the replay tool to be more integrated with GDB -- currently ReBranch use a modified gdbserver to do the replay work, however, because ReBranch only records control-flow, the replay performance is far from prefect. Any suggestion is welcome. Thank you!