From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 1599 invoked by alias); 17 Sep 2013 09:19:36 -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 1587 invoked by uid 89); 17 Sep 2013 09:19:36 -0000 Received: from relay1.mentorg.com (HELO relay1.mentorg.com) (192.94.38.131) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Tue, 17 Sep 2013 09:19:36 +0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=0.7 required=5.0 tests=AWL,BAYES_00,GARBLED_BODY,KHOP_THREADED,RDNS_NONE,SPF_HELO_FAIL autolearn=no version=3.3.2 X-HELO: relay1.mentorg.com Received: from svr-orw-fem-01.mgc.mentorg.com ([147.34.98.93]) by relay1.mentorg.com with esmtp id 1VLrRT-0004QG-93 from Yao_Qi@mentor.com ; Tue, 17 Sep 2013 02:19:31 -0700 Received: from SVR-ORW-FEM-03.mgc.mentorg.com ([147.34.97.39]) by svr-orw-fem-01.mgc.mentorg.com over TLS secured channel with Microsoft SMTPSVC(6.0.3790.4675); Tue, 17 Sep 2013 02:19:30 -0700 Received: from qiyao.dyndns.org (147.34.91.1) by svr-orw-fem-03.mgc.mentorg.com (147.34.97.39) with Microsoft SMTP Server id 14.2.247.3; Tue, 17 Sep 2013 02:19:30 -0700 Message-ID: <52381E7A.9000503@codesourcery.com> Date: Tue, 17 Sep 2013 09:19:00 -0000 From: Yao Qi User-Agent: Mozilla/5.0 (X11; Linux i686; rv:17.0) Gecko/20130110 Thunderbird/17.0.2 MIME-Version: 1.0 To: "Agovic, Sanimir" CC: "gdb-patches@sourceware.org" Subject: Re: [PATCH] Fix PR server/15959 References: <1379391203-14928-1-git-send-email-yao@codesourcery.com> <0377C58828D86C4588AEEC42FC3B85A71767DCAA@IRSMSX105.ger.corp.intel.com> In-Reply-To: <0377C58828D86C4588AEEC42FC3B85A71767DCAA@IRSMSX105.ger.corp.intel.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit X-IsSubscribed: yes X-SW-Source: 2013-09/txt/msg00490.txt.bz2 Sanimir, thanks for the review. On 09/17/2013 03:11 PM, Agovic, Sanimir wrote: >> +#include >> > > Seems this header is not needed. > I'll remove it. >> >diff --git a/gdb/testsuite/gdb.server/wrapper.exp b/gdb/testsuite/gdb.server/wrapper.exp >> >new file mode 100644 >> >index 0000000..ee2e430 >> >--- /dev/null >> >+++ b/gdb/testsuite/gdb.server/wrapper.exp >> >@@ -0,0 +1,48 @@ >> >[...] >> >+ >> >+if { [skip_gdbserver_tests] } { >> >+ return 0 >> >+} >> > > Here you use space around the condition, below you don't. At least we should be consistent. >> > OK, fixed. Here is an updated one. -- Yao (齐尧) gdb/gdbserver: 2013-09-17 Yao Qi PR server/15959 * server.c (start_inferior): Clear 'resume_info'. gdb/testsuite/ 2013-09-17 Yao Qi * gdb.server/wrapper.c: New. * gdb.server/wrapper.exp: New. --- gdb/gdbserver/server.c | 1 + gdb/testsuite/gdb.server/wrapper.c | 34 ++++++++++++++++++++++++ gdb/testsuite/gdb.server/wrapper.exp | 48 ++++++++++++++++++++++++++++++++++ 3 files changed, 83 insertions(+), 0 deletions(-) create mode 100644 gdb/testsuite/gdb.server/wrapper.c create mode 100644 gdb/testsuite/gdb.server/wrapper.exp diff --git a/gdb/gdbserver/server.c b/gdb/gdbserver/server.c index f4e1525..4de20d5 100644 --- a/gdb/gdbserver/server.c +++ b/gdb/gdbserver/server.c @@ -256,6 +256,7 @@ start_inferior (char **argv) { struct thread_resume resume_info; + memset (&resume_info, 0, sizeof (resume_info)); resume_info.thread = pid_to_ptid (signal_pid); resume_info.kind = resume_continue; resume_info.sig = 0; diff --git a/gdb/testsuite/gdb.server/wrapper.c b/gdb/testsuite/gdb.server/wrapper.c new file mode 100644 index 0000000..fcc73a0 --- /dev/null +++ b/gdb/testsuite/gdb.server/wrapper.c @@ -0,0 +1,34 @@ +/* This testcase is part of GDB, the GNU debugger. + + Copyright 2013 Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +#include + +static char *d = NULL; + +static void +marker (void) +{} + +int +main(void) +{ + d = getenv("TEST"); + + marker (); + + return 0; +} diff --git a/gdb/testsuite/gdb.server/wrapper.exp b/gdb/testsuite/gdb.server/wrapper.exp new file mode 100644 index 0000000..a228f6a --- /dev/null +++ b/gdb/testsuite/gdb.server/wrapper.exp @@ -0,0 +1,48 @@ +# This testcase is part of GDB, the GNU debugger. + +# Copyright 2013 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# Test --wrapper option of GDBserver. + +load_lib gdbserver-support.exp + +standard_testfile + +if { [skip_gdbserver_tests] } { + return 0 +} + +if { [prepare_for_testing $testfile.exp $testfile $srcfile debug] } { + return -1 +} + +# Make sure we're disconnected, in case we're testing with an +# extended-remote board, therefore already connected. +gdb_test "disconnect" ".*" + +set target_exec [gdbserver_download_current_prog] +# Start GDBserver with option '--wrapper'. +set res [gdbserver_start "--wrapper env TEST=1 --" $target_exec] + +set gdbserver_protocol [lindex $res 0] +set gdbserver_gdbport [lindex $res 1] +gdb_target_cmd $gdbserver_protocol $gdbserver_gdbport + +gdb_breakpoint marker +gdb_test "continue" "Breakpoint.* marker .*" "continue to marker" +# Test env var TEST is correctly passed to the program through +# --wrapper. +gdb_test "print d" "\\$${decimal} = ${hex} \"1\".*" -- 1.7.7.6