From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 599 invoked by alias); 8 Nov 2011 06:00:14 -0000 Received: (qmail 533 invoked by uid 22791); 8 Nov 2011 06:00:12 -0000 X-SWARE-Spam-Status: No, hits=-1.6 required=5.0 tests=AWL,BAYES_00,FROM_12LTRDOM X-Spam-Check-By: sourceware.org Received: from relay1.mentorg.com (HELO relay1.mentorg.com) (192.94.38.131) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 08 Nov 2011 05:59:59 +0000 Received: from nat-jpt.mentorg.com ([192.94.33.2] helo=PR1-MAIL.mgc.mentorg.com) by relay1.mentorg.com with esmtp id 1RNej0-00064s-RV from Yao_Qi@mentor.com for gdb-patches@sourceware.org; Mon, 07 Nov 2011 21:59:58 -0800 Received: from [127.0.0.1] ([172.16.63.104]) by PR1-MAIL.mgc.mentorg.com with Microsoft SMTPSVC(6.0.3790.1830); Tue, 8 Nov 2011 14:59:57 +0900 Message-ID: <4EB8C551.9090609@codesourcery.com> Date: Tue, 08 Nov 2011 06:00:00 -0000 From: Yao Qi User-Agent: Mozilla/5.0 (X11; Linux i686; rv:7.0.1) Gecko/20110930 Thunderbird/7.0.1 MIME-Version: 1.0 To: gdb-patches@sourceware.org Subject: [patch 0/8] Download tracepoint locations when tracing is running Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-IsSubscribed: yes Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2011-11/txt/msg00168.txt.bz2 Hi, Current gdb/gdbserver only allows to download tracepoint before tracing is started. This patch set is about to teach gdb/gdbserver to be able to download tracepoint locations even when tracing is run. This feature is quite useful to 1) adding new tracepoints after `tstart', 2) pending tracepoints can be downloaded/installed in tracing (after this patch set is applied, pending tracepoint works without much effort). In order to achieve this feature, there are several points we should address, #1 gdb should know whether remote stub supports this feature, so we need a new qSupported feature "InstallInTrace" for this. This is done by patch 2/8. #2 gdb should be able to download tracepoint locations when they are changed, and keep track of their 'status'. This is done by patch 3/8. #3 gdbserver should be able to install tracepoint locations when received from gdb. This is done by patch 6/8 (patch 5/8 is a refactor to gdbserver to prepare for 6/8). #4 remote stub may not always be able to receive tracepoint details, and gdb has to download tracepoints when remote stub is ready. This is done by patch 3/8. Patch 2/8 and 3/8 should be part of patch 4/8, but I split them to make review more clear. This patch set will be applied as a whole once it is approved. Patch 8/8 is about test cases. Regression tested on x86-linux and x86_64-linux. All new added test cases pass on x86-linux, and two kfails on x86_64-linux. These two kfails are existing problem exposed by new test cases. I'll explain it in details in patch 8/8. -- Yao (齐尧)