[Ping] [PATCH] Fix for gdb.base/break-idempotent.exp

Carl Love cel@us.ibm.com
Wed Jun 22 15:11:23 GMT 2022


Ping?

On Tue, 2022-06-14 at 15:38 -0700, Carl Love wrote:
> GDB maintainers:
> 
> The gdb.base/break-idempotent.exp test generates errors trying to set
> and remove breakpoints.  The issue is gdb is trying to set and remove
> breakpoints in skip_hw_watchpoint_tests not in break-idempotent. The
> issue is the skip_hw_watchpoint_test restarts gdb on the test hw
> watchpoint test binary after gdb has been started for the break-
> idempotent.exp test messing up the test.
> 
> This patch moves the check for hardware breakpoints before running
> the
> break-idempotent tests.  The move also improves the performance as
> the
> skip_hw_watchpoint_test only needs to be run once rather for each
> test
> case.  
> 
> The patch has been tested on Power 10 and fixes the failures seen on
> PowerPC.
> 
> Please let me know if this patch is acceptable for mainline.
> 
>                 Carl Love
> 
> 
> -------------------------------------------------
> Fix for gdb.base/break-idempotent.exp
> 
> ---
>  gdb/testsuite/gdb.base/break-idempotent.exp | 12 +++++++++++-
>  1 file changed, 11 insertions(+), 1 deletion(-)
> 
> diff --git a/gdb/testsuite/gdb.base/break-idempotent.exp
> b/gdb/testsuite/gdb.base/break-idempotent.exp
> index 29002f103a8..38b7632a7fc 100644
> --- a/gdb/testsuite/gdb.base/break-idempotent.exp
> +++ b/gdb/testsuite/gdb.base/break-idempotent.exp
> @@ -145,6 +145,16 @@ proc test_break { always_inserted break_command
> } {
>      }
>  }
> 
> +# The skip_hw_watchpoint_tests generates a small test source file to
> test if HW
> +# watchpoints are supported.  Do not want the compile and test for
> the skip
> +# hw watchpoint to restart gdb after the break-idempotemt test has
> is started
> +# on gdb.  Do the skip_hw_watchpoint_tests first.
> +if {[skip_hw_watchpoint_tests]} {
> +    set skip_hw_wp 1
> +} else {
> +    set skip_hw_wp 0
> +}
> +
>  # The testcase uses the "file" command to force breakpoint re-set in
>  # GDB.  Test both with and without PIE, as GDB used to mishandle
>  # breakpoint re-set when reloading PIEs.
> @@ -174,7 +184,7 @@ foreach_with_prefix pie { "nopie" "pie" } {
>  	    test_break $always_inserted "hbreak"
>  	}
> 
> -	if {![skip_hw_watchpoint_tests]} {
> +	if {!$skip_hw_wp} {
>  	    test_break $always_inserted "watch"
>  	}
> 



More information about the Gdb-patches mailing list