From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 30550 invoked by alias); 16 Mar 2007 08:40:38 -0000 Received: (qmail 30538 invoked by uid 22791); 16 Mar 2007 08:40:37 -0000 X-Spam-Check-By: sourceware.org Received: from lon-del-03.spheriq.net (HELO lon-del-03.spheriq.net) (195.46.50.99) by sourceware.org (qpsmtpd/0.31) with ESMTP; Fri, 16 Mar 2007 08:40:25 +0000 Received: from lon-out-03.spheriq.net ([195.46.50.131]) by lon-del-03.spheriq.net with ESMTP id l2G8eLgM022640 for ; Fri, 16 Mar 2007 08:40:21 GMT Received: from lon-cus-02.spheriq.net (lon-cus-02.spheriq.net [195.46.50.38]) by lon-out-03.spheriq.net with ESMTP id l2G8eKGP017048 for ; Fri, 16 Mar 2007 08:40:21 GMT Received: from beta.dmz-eu.st.com (beta.dmz-eu.st.com [164.129.1.35]) by lon-cus-02.spheriq.net with ESMTP id l2G8eKXv022358 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Fri, 16 Mar 2007 08:40:20 GMT Received: from zeta.dmz-eu.st.com (ns2.st.com [164.129.230.9]) by beta.dmz-eu.st.com (STMicroelectronics) with ESMTP id 52225DA41; Fri, 16 Mar 2007 08:40:19 +0000 (GMT) Received: from mail1.cro.st.com (mail1.cro.st.com [164.129.40.131]) by zeta.dmz-eu.st.com (STMicroelectronics) with ESMTP id E6B52472AF; Fri, 16 Mar 2007 08:40:18 +0000 (GMT) Received: from [164.129.44.95] (crx595.cro.st.com [164.129.44.95]) by mail1.cro.st.com (MOS 3.7.5a-GA) with ESMTP id CJZ59181 (AUTH "denis pilat"); Fri, 16 Mar 2007 09:40:17 +0100 (CET) Message-ID: <45FA57F0.4030107@st.com> Date: Fri, 16 Mar 2007 08:40:00 -0000 From: Denis PILAT User-Agent: Thunderbird 1.5.0.10 (X11/20070221) MIME-Version: 1.0 To: Nick Roberts Cc: gdb-patches Subject: Re: New mi commands for threads References: <45F8200A.3000305@st.com> <17913.46746.760751.573314@kahikatea.snap.net.nz> In-Reply-To: <17913.46746.760751.573314@kahikatea.snap.net.nz> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit 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: 2007-03/txt/msg00151.txt.bz2 Nick Roberts wrote: > I think it's best to keep the patches separate unless the code changes > overlap. Ok I'll do that. > > > I would put number-of-threads="6",current-thread-id="1" at the start so that > they don't get lost behind the thread list (I know the output is only intended > for the front end but it might make debugging of GDB easier and costs nothing). > > Lists use square brackets, information on each thread should be enclosed in > curly brackets: > > threads=[{thread-id="6",frame={...},thread-extra-info="bla"},{thread-id="5",frame={...},thread-extra-info="bla"},...] > > I guess your output has been manually generated as thread-id="1" seems to > duplicate some information. This output is a side effect of the frame printing, the actual -thread-select command has the same. I'm going to have a look at how we can avoid it, but I think it will impact *-thread-select* as well. About brackets, I see how they were used in *-thread-list-ids*, according to your comment, this one should use square brackets as well, am I right ? About position of "number-of-threads" and "current-thread-id", I prefer them in front as well, but that would be not consistent with -thread-list-ids. But do we care about consistency with this one that seems to be not consistent with the MI list format ? > > I thought that the frame information was expensive to get and that it was > agreed you could get it, if needed, using other MI commands anyway. Yes it is, but I want to get rid of CLI commands and for front ends that want to get all informations, they could use this command if they need extra information. But I can add an option to include or not these information. For remote (or on board) debugging, our front ends will emit *-thread-list-ids* to get only the list, and then *-thread-info* to focus only on the current thread. But for "native and efficient" debugging, I guess a call to *-thread-list-all-threads* will do the job. That will give us: -thread-list-ids : gives list of thread ids + number of threads -thread-list-all-threads : gives the above + stack frame information per thread + current thread -thread-list-all-threads --extra : gives the above + extra information per thread. Thanks a lot for your feedback Nick, -- Denis Pilat