Skip to content

Commit

Permalink
gdb.debuginfod/fetch_src_and_symbols.exp: fix when GDB is built with …
Browse files Browse the repository at this point in the history
…AddressSanitizer

This test fails for me, showing:

    ERROR: tcl error sourcing /home/smarchi/src/binutils-gdb/gdb/testsuite/gdb.debuginfod/fetch_src_and_symbols.exp.
    ERROR: This GDB was configured as follows:
       configure --host=x86_64-pc-linux-gnu --target=x86_64-pc-linux-gnu
                 --with-auto-load-dir=$debugdir:$datadir/auto-load
                 --with-auto-load-safe-path=$debugdir:$datadir/auto-load
    ... and much more ...

The problem is that TCL's exec throws an error as soon as the exec'ed
process outputs on stderr.  When GDB is built with ASan, it prints some
warnings about pre-existing signal handlers:

    warning: Found custom handler for signal 7 (Bus error) preinstalled.
    warning: Found custom handler for signal 8 (Floating point exception) preinstalled.
    warning: Found custom handler for signal 11 (Segmentation fault) preinstalled.

Pass --quiet to GDB to avoid these warnings.

Change-Id: I3751d89b9b1df646da19149d7cb86775e2d3e80f
  • Loading branch information
simark committed Nov 9, 2021
1 parent 7b9f73f commit f0bbba7
Showing 1 changed file with 6 additions and 1 deletion.
7 changes: 6 additions & 1 deletion gdb/testsuite/gdb.debuginfod/fetch_src_and_symbols.exp
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,13 @@ if { [which curl] == 0 } {
}

# Skip testing if gdb was not configured with debuginfod
#
# If GDB is built with ASan, it warns that some signal handlers (installed by
# ASan) exist on startup. That makes TCL's exec throw an error. Disable that
# by passing --quiet.

if { [string first "with-debuginfod" \
[eval exec $GDB $INTERNAL_GDBFLAGS --configuration]] == -1 } {
[eval exec $GDB --quiet $INTERNAL_GDBFLAGS --configuration]] == -1 } {
untested "gdb not configured with debuginfod"
return -1
}
Expand Down

0 comments on commit f0bbba7

Please sign in to comment.