From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 32213 invoked by alias); 3 Jun 2013 10:52:33 -0000 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 Received: (qmail 32180 invoked by uid 89); 3 Jun 2013 10:52:26 -0000 X-Spam-SWARE-Status: No, score=-7.8 required=5.0 tests=AWL,BAYES_00,KHOP_THREADED,RCVD_IN_HOSTKARMA_W,RCVD_IN_HOSTKARMA_WL,RP_MATCHES_RCVD,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.1 Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.84/v0.84-167-ge50287c) with ESMTP; Mon, 03 Jun 2013 10:52:25 +0000 Received: from int-mx02.intmail.prod.int.phx2.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id r53AqNkn015668 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Mon, 3 Jun 2013 06:52:23 -0400 Received: from [127.0.0.1] (ovpn01.gateway.prod.ext.ams2.redhat.com [10.39.146.11]) by int-mx02.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id r53AqMUg026363; Mon, 3 Jun 2013 06:52:22 -0400 Message-ID: <51AC7565.9070400@redhat.com> Date: Mon, 03 Jun 2013 10:52:00 -0000 From: Pedro Alves User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130311 Thunderbird/17.0.4 MIME-Version: 1.0 To: Sterling Augustine CC: gdb-patches Subject: Re: [Patch] Mechanism for board files to set default remotetimeout References: <51A877BD.4020804@redhat.com> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-SW-Source: 2013-06/txt/msg00008.txt.bz2 On 05/31/2013 09:57 PM, Sterling Augustine wrote: > On Fri, May 31, 2013 at 3:13 AM, Pedro Alves wrote: >> On 05/31/2013 12:42 AM, Sterling Augustine wrote: >>> The enclosed simple patch adds and demonstrates a new mechanism for a >>> board file to declare a default remotetimeout. >> >> Took me a bit to realize this is about "set remotetimeout" in gdb, >> not the expect timeout. It wasn't that obvious from the >> description. :-) >> >> Is this really necessary? The board could just append "-l TIMEOUT" >> to the GDB command line invocation. Looks simpler, and doesn't >> depend on issuing an interactive GDB command. > > I'll switch to this. > >>> It follows a similar mechanism as set height 0. >>> >>> This is useful if the board has high latency for internal gdb >>> commands, as remote-stdio-gdbserver.exp does. >> >> "high latency for internal gdb commands"? >> >> What does that mean? What are internal gdb commands? > > I meant to distinguish between the communication that happens between > the user and gdb, and the communication that happens between gdb and > gdbserver. Not very well, apparently. :-) Calling those the remote serial protocol (RSP) commands would be clearer. > >> >> Testsuite knobs boards can tweak should be documented somewhere. >> Looks like under "Testsuite Configuration" in the gdbint manual >> might be a good place? Would be great if it was minimally >> documented in the .exp itself too. > > Since I'm switching to the other mechanism, I guess I won't worry > about this. I will however, separately submit a patch to the "set > remotetimeout" command's documentation, mentioning that there is a > command line option which does the same thing. Would have saved me a > bit of trouble. That's always nice, thanks. Note however, given "-ex", you don't even need the special -l switch. This gdb -ex "set remotetimeout xxx" works just as fine. So you can do this from the command line: $ make check RUNTESTFLAGS="GDBFLAGS='-ex set\ remotetimeout\ 1000'" Or, for example, this is a board file I have for testing GDB in different modes: ~~~ set board_info(localhost,isremote) 0 load_generic_config "unix" set GDBFLAGS "" #set GDBFLAGS "${GDBFLAGS} -ex \"set target-async on\"" #set GDBFLAGS "${GDBFLAGS} -ex \"set break always-inserted on\"" #set GDBFLAGS "${GDBFLAGS} -ex \"set displaced-stepping on\"" # The default compiler for this target. set_board_info compiler "[find_gcc]" ~~~ I then go and uncomment one of those lines to pick the mode I want. and run with: $ make check RUNTESTFLAGS="--target_board=localhost" (I call that board file localhost.exp) -- Pedro Alves