]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
[gdb/testsuite] Add PR26286 kfail in gdb.threads/attach-many-short-lived-threads.exp
authorTom de Vries <tdevries@suse.de>
Fri, 24 May 2024 07:36:52 +0000 (09:36 +0200)
committerTom de Vries <tdevries@suse.de>
Fri, 24 May 2024 07:36:52 +0000 (09:36 +0200)
When running test-case gdb.threads/attach-many-short-lived-threads.exp, I run
regularly into PR26286:
...
(gdb) continue^M
Continuing.^M
[LWP ... exited]^M
  ...
[LWP ... exited]^M
^M
Program terminated with signal SIGTRAP, Trace/breakpoint trap.^M
The program no longer exists.^M
(gdb) FAIL: gdb.threads/attach-many-short-lived-threads.exp: iter 9: \
  break at break_fn: 1
...

Add a kfail for this, such that we have:
...
(gdb) KFAIL: gdb.threads/attach-many-short-lived-threads.exp: iter 9: \
  break at break_fn: 1 (PRMS: threads/26286)
...

Reviewed-By: Thiago Jung Bauermann <thiago.bauermann@linaro.org>
Tested on x86_64-linux.

gdb/testsuite/gdb.threads/attach-many-short-lived-threads.exp

index 6bee0ad2e2c745bc2aff209ffc328bee62458f19..8883485004294689e601d4124813fb8027e4210a 100644 (file)
@@ -141,9 +141,32 @@ proc test {} {
            # attach.
            sleep 2
 
+           set re_pr26286 \
+               [multi_line \
+                    [string_to_regexp \
+                         "Program terminated with signal SIGTRAP, Trace/breakpoint trap."] \
+                    [string_to_regexp \
+                         "The program no longer exists."]]
+
            set bps 3
+           set exited 0
            for {set bp 1} { $bp <= $bps } { incr bp } {
-               gdb_test "continue" "Breakpoint.*" "break at break_fn: $bp"
+               gdb_test_multiple "continue" "break at break_fn: $bp" {
+                   -re -wrap "$re_pr26286" {
+                       kfail threads/26286 $gdb_test_name
+                       set exited 1
+                   }
+                   -re -wrap "Breakpoint.*" {
+                       pass $gdb_test_name
+                   }
+               }
+               if { $exited } {
+                   break
+               }
+           }
+
+           if { $exited } {
+               return
            }
 
            if {$attempt < $attempts} {