From: Tom de Vries Date: Mon, 23 Sep 2024 19:40:16 +0000 (+0200) Subject: [gdb/testsuite] Fix timeout in gdb.fortran/info-types.exp X-Git-Tag: gdb-16-branchpoint~848 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b9155b800c6be57a7f4933a4fd8c5c5d51414e77;p=thirdparty%2Fbinutils-gdb.git [gdb/testsuite] Fix timeout in gdb.fortran/info-types.exp When running the testsuite in an enviroment that simulates a stressed system, I ran into a timeout in test-case gdb.fortran/info-types.exp: ... (gdb) info types^M FAIL: gdb.fortran/info-types.exp: info types (timeout) ... This is mainly due the presence of glibc debug info. With it installed, I get: ... $ time gdb -q -batch -x outputs/gdb.fortran/info-types/gdb.in.1 > /dev/null real 0m35.969s user 0m38.231s sys 0m1.007s ... and without: ... $ time gdb -q -batch -x outputs/gdb.fortran/info-types/gdb.in.1 > /dev/null real 0m4.782s user 0m5.014s sys 0m0.304s ... Fix this by not running to main, which gets us: ... $ time gdb -q -batch -x outputs/gdb.fortran/info-types/gdb.in.1 > /dev/null real 0m0.808s user 0m0.789s sys 0m0.137s ... Likewise in gdb.mi/mi-sym-info.exp and gdb.mi/mi-complete.exp. Tested on x86_64-linux. Approved-By: Tom Tromey --- diff --git a/gdb/testsuite/gdb.fortran/info-types.exp b/gdb/testsuite/gdb.fortran/info-types.exp index 52ce7ace89d..ad2c9889ec9 100644 --- a/gdb/testsuite/gdb.fortran/info-types.exp +++ b/gdb/testsuite/gdb.fortran/info-types.exp @@ -27,10 +27,8 @@ if { [prepare_for_testing "failed to prepare" $testfile \ return -1 } -if { ![fortran_runto_main] } { - perror "Could not run to main." - return -} +# Don't run to main to avoid increasing the search scope to include +# debug info of shared libraries like libc, libgcc, libgfortran etc. set integer4 [fortran_int4] set integer8 [fortran_int8] diff --git a/gdb/testsuite/gdb.mi/mi-complete.exp b/gdb/testsuite/gdb.mi/mi-complete.exp index 91564a43302..7fccaa22545 100644 --- a/gdb/testsuite/gdb.mi/mi-complete.exp +++ b/gdb/testsuite/gdb.mi/mi-complete.exp @@ -28,7 +28,8 @@ if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debu mi_clean_restart $binfile -mi_runto_main +# Don't run to main to avoid increasing the search scope to include +# debug info of shared libraries like glibc, libgcc, etc. mi_gdb_test "1-complete br" \ "1\\^done,completion=\"break\",matches=\\\[.*\"break\",.*\"break-range\".*\\\],max_completions_reached=\"0\"" \ diff --git a/gdb/testsuite/gdb.mi/mi-sym-info.exp b/gdb/testsuite/gdb.mi/mi-sym-info.exp index 40c06443509..b8db2af0d0b 100644 --- a/gdb/testsuite/gdb.mi/mi-sym-info.exp +++ b/gdb/testsuite/gdb.mi/mi-sym-info.exp @@ -35,7 +35,8 @@ if {[build_executable "failed to prepare" ${testfile} \ mi_clean_restart $binfile -mi_runto_main +# Don't run to main to avoid increasing the search scope to include +# debug info of shared libraries like libc, libgcc, etc. set qstr "\"\[^\"\]+\"" set fun_re \