From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 111161 invoked by alias); 16 May 2016 19:24:41 -0000 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 Received: (qmail 111150 invoked by uid 89); 16 May 2016 19:24:41 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-3.3 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD,SPF_PASS autolearn=ham version=3.3.2 spammy=H*UA:1.5, responds, H*x:1.5, ending X-HELO: mailuogwhop.emc.com Received: from mailuogwhop.emc.com (HELO mailuogwhop.emc.com) (168.159.213.141) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-GCM-SHA384 encrypted) ESMTPS; Mon, 16 May 2016 19:24:31 +0000 Received: from maildlpprd01.lss.emc.com (maildlpprd01.lss.emc.com [10.253.24.33]) by mailuogwprd01.lss.emc.com (Sentrion-MTA-4.3.1/Sentrion-MTA-4.3.0) with ESMTP id u4GJORGW006842 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO) for ; Mon, 16 May 2016 15:24:28 -0400 X-DKIM: OpenDKIM Filter v2.4.3 mailuogwprd01.lss.emc.com u4GJORGW006842 X-DKIM: OpenDKIM Filter v2.4.3 mailuogwprd01.lss.emc.com u4GJORGW006842 Received: from mailsyshubprd54.lss.emc.com (mailsyshubprd54.lss.emc.com [10.106.48.29]) by maildlpprd01.lss.emc.com (RSA Interceptor) for ; Mon, 16 May 2016 15:21:31 -0400 Received: from usendtaylorx2l (d5170089.lss.emc.com [10.243.146.89]) by mailsyshubprd54.lss.emc.com (Sentrion-MTA-4.3.1/Sentrion-MTA-4.3.0) with ESMTP id u4GJOCQq010617 for ; Mon, 16 May 2016 15:24:12 -0400 Received: by usendtaylorx2l (Postfix, from userid 26043) id E0F0D2607BF; Mon, 16 May 2016 15:24:11 -0400 (EDT) Received: from usendtaylorx2l (localhost [127.0.0.1]) by usendtaylorx2l (Postfix) with ESMTP id C8C28260052 for ; Mon, 16 May 2016 15:24:11 -0400 (EDT) From: David Taylor To: gdb@sourceware.org Subject: tracepoints -- DWARF and tstart Date: Mon, 16 May 2016 19:24:00 -0000 Message-ID: <19272.1463426651@usendtaylorx2l> X-RSA-Classifications: public X-Sentrion-Hostname: mailuogwprd01.lss.emc.com X-IsSubscribed: yes X-SW-Source: 2016-05/txt/msg00003.txt.bz2 When doing a trace experiment, GDB waits until you type 'tstart' to generate the agent byte code expressions that it will send to the GDB stub running on the remote target. This might be okay if the conversion never produced an error. Alas, it *CAN* produce an error *AND* GDB is rather stingy with the information that it shares with the user when this happens. Imagine a trace experiment where you have defined half a dozen tracepoints, each with some collection actions. You type tstart and GDB responds with something like DWARF operator DW_OP_GNU_implicit_pointer cannot be translated to an agent expression. and the trace experiment is *NOT* started. You've got a problem to debug. You are trying to run a trace experiment to collect information to debug the problem. And GDB is being rather, shall we say, unhelpful. Ideal would be to get the errors, if any, when you type the ending the particular 'collect' action. Second best would be to get them, along with which collect was the problem, when you type the 'end' ending the set of actions associated with the tracepoint. Getting it with 'tstart', while not ideal, would be a lot better if it told you *WHICH* tracepoint and *WHICH* collect action are the cause of the problem. And, if they are going to occur at 'tstart' time, a warning would be nicer. That is, allow the experiment to run without that particular variable / expression. If the expression is '$locals', then warning about whichever variable is the problem and collecting the rest would be nice. My current thinking is to do the last option above (it seems the easiest / quickest) and think about what would be required to give the error earlier. Thoughts?