From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by sourceware.org (Postfix) with ESMTPS id 5E5E6385842B for ; Thu, 9 Mar 2023 09:45:36 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 5E5E6385842B Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=suse.de Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.de Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 88CA721DAA for ; Thu, 9 Mar 2023 09:45:35 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1678355135; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=LHbDur0HFCIwmvjFOV+jg2HhkjHcmyA5cm+99O5WzU4=; b=nf0Yeii3LobpnwTjcYgBqGL5FOTXuekv+SUxpBZkOBDhF0QFDw+XJ4tjtQmYzFzBgJm3/m FWm+TW6n7ubZGXTpAr3E0SWt+Y402Ui8CwGHk8rvcCAOeo4xdhoL+zn6yktBOJjRyycu/U cpUrO1eepxKm+O1WJ2xbub05MhXIWzI= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1678355135; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=LHbDur0HFCIwmvjFOV+jg2HhkjHcmyA5cm+99O5WzU4=; b=X+iiyoQ+j6ftECltz41TaySzbgRt5tf5VS/z600SzrZiCZNP5gfNbksV2NS18GxlKx6L6i U2x4YbPFjPcXEFDg== Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 7520E1391B for ; Thu, 9 Mar 2023 09:45:35 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id KOx1G7+qCWS8FwAAMHmgww (envelope-from ) for ; Thu, 09 Mar 2023 09:45:35 +0000 From: Tom de Vries To: gdb-patches@sourceware.org Subject: [PATCH 7/7] [gdb/testsuite] Fix gdb.server/*.exp for remote target Date: Thu, 9 Mar 2023 10:45:45 +0100 Message-Id: <20230309094545.4537-7-tdevries@suse.de> X-Mailer: git-send-email 2.35.3 In-Reply-To: <20230309094545.4537-1-tdevries@suse.de> References: <20230309094545.4537-1-tdevries@suse.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-12.5 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Fix test-cases for target board remote-gdbserver-on-localhost by using gdb_remote_download. Tested on x86_64-linux. --- .../gdb.server/exit-multiple-threads.exp | 16 +++++++++------- gdb/testsuite/gdb.server/reconnect-ctrl-c.exp | 4 +++- .../gdb.server/run-without-local-binary.exp | 4 +++- .../gdb.server/stop-reply-no-thread-multi.exp | 4 +++- .../gdb.server/stop-reply-no-thread.exp | 4 +++- gdb/testsuite/gdb.server/twice-connect.exp | 4 +++- 6 files changed, 24 insertions(+), 12 deletions(-) diff --git a/gdb/testsuite/gdb.server/exit-multiple-threads.exp b/gdb/testsuite/gdb.server/exit-multiple-threads.exp index 87867f00e66..4e55873b1b5 100644 --- a/gdb/testsuite/gdb.server/exit-multiple-threads.exp +++ b/gdb/testsuite/gdb.server/exit-multiple-threads.exp @@ -35,7 +35,7 @@ standard_testfile # # Places a breakpoint in function 'breakpt' and then continues to the # breakpoint, at which point it runs 'info threads'. -proc prepare_for_test { executable disable_multi_process } { +proc prepare_for_test { executable target_executable disable_multi_process } { global GDBFLAGS save_vars { GDBFLAGS } { @@ -65,7 +65,7 @@ proc prepare_for_test { executable disable_multi_process } { } # Start gdbserver and connect. - set res [gdbserver_start "" $executable] + set res [gdbserver_start "" $target_executable] set gdbserver_protocol [lindex $res 0] set gdbserver_gdbport [lindex $res 1] set res [gdb_target_cmd $gdbserver_protocol $gdbserver_gdbport] @@ -83,10 +83,10 @@ proc prepare_for_test { executable disable_multi_process } { # we have multiple-threads. EXECUTABLE is the binary under test, and # DISABLE_MULTI_PROCESS indicates if we should disable GDB's remote # multi-process support. -proc run_exit_test { executable disable_multi_process } { +proc run_exit_test { executable target_executable disable_multi_process } { global decimal - prepare_for_test ${executable} ${disable_multi_process} + prepare_for_test ${executable} $target_executable ${disable_multi_process} # Finally, continue until the process exits, ensure we don't see # any warnings between "Continuing." and the final process has @@ -107,10 +107,10 @@ proc run_exit_test { executable disable_multi_process } { # while we have multiple-threads. EXECUTABLE is the binary under # test, and DISABLE_MULTI_PROCESS indicates if we should disable GDB's # remote multi-process support. -proc run_signal_test { executable disable_multi_process } { +proc run_signal_test { executable target_executable disable_multi_process } { global decimal gdb_prompt - prepare_for_test ${executable} ${disable_multi_process} + prepare_for_test ${executable} $target_executable ${disable_multi_process} set inf_pid [get_valueof "/d" "global_pid" "unknown"] gdb_assert ![string eq ${inf_pid} "unknown"] "read the pid" @@ -142,7 +142,9 @@ foreach_with_prefix test { exit signal } { return -1 } + set target_executable [gdb_remote_download target $executable] + foreach_with_prefix multi_process { 0 1 } { - $func ${executable} ${multi_process} + $func ${executable} $target_executable ${multi_process} } } diff --git a/gdb/testsuite/gdb.server/reconnect-ctrl-c.exp b/gdb/testsuite/gdb.server/reconnect-ctrl-c.exp index c8ef81443e5..6146cc3888e 100644 --- a/gdb/testsuite/gdb.server/reconnect-ctrl-c.exp +++ b/gdb/testsuite/gdb.server/reconnect-ctrl-c.exp @@ -40,6 +40,8 @@ save_vars { GDBFLAGS } { } } +set target_binfile [gdb_remote_download target $binfile] + # Make sure we're disconnected, in case we're testing with an # extended-remote board, therefore already connected. with_test_prefix "preparation" { @@ -70,7 +72,7 @@ proc connect_continue_ctrl_c {} { with_test_prefix "first" { # Start GDBserver. set gdbserver_reconnect_p 1 - set res [gdbserver_start "" $binfile] + set res [gdbserver_start "" $target_binfile] set gdbserver_protocol [lindex $res 0] set gdbserver_gdbport [lindex $res 1] diff --git a/gdb/testsuite/gdb.server/run-without-local-binary.exp b/gdb/testsuite/gdb.server/run-without-local-binary.exp index c390eeb435a..08620e0ec3e 100644 --- a/gdb/testsuite/gdb.server/run-without-local-binary.exp +++ b/gdb/testsuite/gdb.server/run-without-local-binary.exp @@ -23,6 +23,8 @@ if {[build_executable "failed to prepare" $testfile $srcfile debug]} { return -1 } +set target_binfile [gdb_remote_download target $binfile] + # Test running GDB without providing a local binary for it. In order # to do that, we unset GDBFLAGS before running GDB. We also start # gdbserver "by hand". For more details about this test, see PR @@ -39,7 +41,7 @@ save_vars { GDBFLAGS } { gdb_exit gdb_start - gdb_test_no_output "set remote exec-file $binfile" \ + gdb_test_no_output "set remote exec-file $target_binfile" \ "set remote exec-file" # Make sure we're disconnected, in case we're testing with an diff --git a/gdb/testsuite/gdb.server/stop-reply-no-thread-multi.exp b/gdb/testsuite/gdb.server/stop-reply-no-thread-multi.exp index 042c285d98a..cf6be64fab3 100644 --- a/gdb/testsuite/gdb.server/stop-reply-no-thread-multi.exp +++ b/gdb/testsuite/gdb.server/stop-reply-no-thread-multi.exp @@ -37,6 +37,8 @@ if { [build_executable "failed to prepare" $testfile $srcfile {debug pthreads}] return -1 } +set target_binfile [gdb_remote_download target $binfile] + # Run the tests with different features of GDBserver disabled. # TARGET_NON_STOP is passed to "maint set target-non-stop". proc run_test { target_non_stop disable_feature } { @@ -63,7 +65,7 @@ proc run_test { target_non_stop disable_feature } { if { $disable_feature != "" } { set packet_arg "--disable-packet=${disable_feature}" } - set res [gdbserver_start $packet_arg $binfile] + set res [gdbserver_start $packet_arg $::target_binfile] set gdbserver_protocol [lindex $res 0] set gdbserver_gdbport [lindex $res 1] diff --git a/gdb/testsuite/gdb.server/stop-reply-no-thread.exp b/gdb/testsuite/gdb.server/stop-reply-no-thread.exp index 3ef512bc637..65db483e8de 100644 --- a/gdb/testsuite/gdb.server/stop-reply-no-thread.exp +++ b/gdb/testsuite/gdb.server/stop-reply-no-thread.exp @@ -29,6 +29,8 @@ if { [build_executable "failed to prepare" $testfile $srcfile] == -1 } { return -1 } +set target_binfile [gdb_remote_download target $binfile] + # Run the tests with different features of GDBserver disabled. proc run_test { disable_feature target_nonstop } { global binfile gdb_prompt decimal GDBFLAGS @@ -51,7 +53,7 @@ proc run_test { disable_feature target_nonstop } { if { $disable_feature != "" } { set packet_arg "--disable-packet=${disable_feature}" } - set res [gdbserver_start $packet_arg $binfile] + set res [gdbserver_start $packet_arg $::target_binfile] set gdbserver_protocol [lindex $res 0] set gdbserver_gdbport [lindex $res 1] diff --git a/gdb/testsuite/gdb.server/twice-connect.exp b/gdb/testsuite/gdb.server/twice-connect.exp index 8ff8334f5f2..fd76ea0ce3e 100644 --- a/gdb/testsuite/gdb.server/twice-connect.exp +++ b/gdb/testsuite/gdb.server/twice-connect.exp @@ -29,9 +29,11 @@ if { [build_executable "failed to prepare" $::testfile $::srcfile \ # Don't use $binfile arg, to make sure we use the remote file target:$binfile. clean_restart +set target_binfile [gdb_remote_download target $binfile] + # Start gdbserver, and connect to it, twice. foreach_with_prefix session {first second} { - lassign [gdbserver_start "" "$binfile"] unused gdbserver_address + lassign [gdbserver_start "" "$target_binfile"] unused gdbserver_address gdb_test "disconnect" set res [gdb_target_cmd "remote" $gdbserver_address] gdb_assert { $res == 0 } "gdbserver started" -- 2.35.3