[PATCH] [gdb/testsuite] Add missing wait in gdb.base/signals-state-child.exp

Tom de Vries tdevries@suse.de
Thu Nov 18 14:54:09 GMT 2021


On 11/16/21 12:14 AM, Tom de Vries via Gdb-patches wrote:
> On OBS I ran into:
> ...
> (gdb) shell diff -s outputs/gdb.base/signals-state-child/standalone.txt \
>   outputs/gdb.base/signals-state-child/gdb.txt^M
> diff: outputs/gdb.base/signals-state-child/standalone.txt: \
>   No such file or directory^M
> (gdb) FAIL: gdb.base/signals-state-child.exp: signals states are identical
> ...
> 
> I managed to reproduce this by adding "sleep (5)" at the start of main in
> signals-state-child.c.
> 
> Fix this by waiting on the result of the spawned command.
> 
> Tested on x86_64-linux.

Committed.

Thanks,
- Tom

> ---
>  gdb/testsuite/gdb.base/signals-state-child.exp | 14 +++++++++++---
>  1 file changed, 11 insertions(+), 3 deletions(-)
> 
> diff --git a/gdb/testsuite/gdb.base/signals-state-child.exp b/gdb/testsuite/gdb.base/signals-state-child.exp
> index ce143b1509a..733d7cebd5a 100644
> --- a/gdb/testsuite/gdb.base/signals-state-child.exp
> +++ b/gdb/testsuite/gdb.base/signals-state-child.exp
> @@ -69,9 +69,11 @@ set res [remote_spawn target "$binfile-standalone"]
>  if { $res < 0 || $res == "" } {
>      untested "spawning $binfile-standalone failed"
>      return 1
> -} else {
> -    pass "collect standalone signals state"
>  }
> +
> +set wait_status [remote_wait target 60]
> +set have_standalone [expr [lindex $wait_status 0] == 0]
> +gdb_assert { $have_standalone } "collect standalone signals state"
>  remote_close target
>  
>  # Now run the program through gdb, and dump its initial signal actions
> @@ -85,6 +87,12 @@ if { ! [ runto_main ] } then {
>  
>  gdb_continue_to_end "collect signals state under gdb"
>  
> +set test "signals states are identical"
> +if { ! $have_standalone } {
> +    untested $test
> +    return -1
> +}
> +
>  if {!$purely_local} {
>      # Copy file from target to host through build.
>      remote_download host [remote_upload target gdb.txt] gdb.txt
> @@ -94,4 +102,4 @@ if {!$purely_local} {
>  # Diff the .txt files.  They should be identical.
>  gdb_test "shell diff -s $standalone_txt $gdb_txt" \
>      "Files .* are identical.*" \
> -    "signals states are identical"
> +    $test
> 
> base-commit: 636ae5bb4b6b801f8bda05041f600cbf3945c147
> 


More information about the Gdb-patches mailing list