unbreak nios2-*-linux* testing
Commit Message
On 06/30/2015 08:57 AM, Sandra Loosemore wrote:
> As previously noted, on Nios II Linux targets, the kernel now puts
> signal handler handler trampolines on a read-only page of memory and GDB
> cannot set single-step breakpoints there. My last attempt at working
> around this
>
> https://sourceware.org/ml/gdb-patches/2015-04/msg01092.html
>
> was rejected in favor of some not-yet-implemented target-independent
> solution:
>
> https://sourceware.org/ml/gdb-patches/2015-05/msg00183.html
>
> Given that the discussion pointed to by that thread is 11 years old, I
> think it's safe to say that fixing this is not a priority. :-(
>
> Meanwhile, the GDB testsuite remains broken on this target. Tests are
> not just failing, but getting stuck in infinite loops trying
> unsuccessfully to step out of a signal handler without recognizing that
> they are stuck. This is blocking regression testing of other patches in
> my queue.
>
> This patch adds kfails for these issues similar to what other targets
> with this problem already do. There are no code changes.
>
> OK to commit, so I can get on with other work?
>
> -Sandra
>
I realized I attached the wrong patch to my previous mail. Here's the
right one. Is this one OK?
-Sandra
Comments
On 06/07/15 17:32, Sandra Loosemore wrote:
> 2015-06-29 Sandra Loosemore<sandra@codesourcery.com>
>
> gdb/testsuite/
> * gdb.base/sigaltstack.exp (finish_test): Add kfail for
> nios2-*-linux*.
> * gdb.base/sigbpt.exp (stepi_out): Likewise.
> * gdb.base/siginfo.exp: Likewise.
> * gdb.base/sigstep.exp (advance, advancei): Likewise.
Patch looks good to me.
@@ -76,6 +76,7 @@ proc finish_test { pattern msg } {
# don't gracefully fall back to single-stepping.
setup_kfail gdb/8841 "i?86-*-linux*"
setup_kfail gdb/8841 "*-*-openbsd*"
+ setup_kfail gdb/8841 "nios2-*-linux*"
fail "$msg (could not set breakpoint)"
}
-re "$pattern.*${gdb_prompt} $" {
@@ -159,6 +159,10 @@ proc stepi_out { name args } {
setup_kfail gdb/8841 "sparc*-*-openbsd*"
fail "$test (could not insert single-step breakpoint)"
}
+ -re "Cannot insert breakpoint.*Cannot access memory.*$gdb_prompt $" {
+ setup_kfail gdb/8841 "nios2*-*-linux*"
+ fail "$test (could not insert single-step breakpoint)"
+ }
-re "keeper.*$gdb_prompt $" {
send_gdb "stepi\n"
exp_continue
@@ -64,6 +64,10 @@ gdb_test_multiple "step" "${test}" {
setup_kfail gdb/8841 sparc*-*-openbsd*
fail "$test (could not insert single-step breakpoint)"
}
+ -re "Cannot insert breakpoint.*Cannot access memory.*$gdb_prompt $" {
+ setup_kfail gdb/8841 "nios2*-*-linux*"
+ fail "$test (could not insert single-step breakpoint)"
+ }
-re "done = 1;.*${gdb_prompt} $" {
send_gdb "$i\n"
exp_continue
@@ -109,6 +109,10 @@ proc advance { enter_cmd in_handler_prefix in_handler exit_cmd } {
setup_kfail gdb/8841 "sparc*-*-openbsd*"
fail "$test (could not insert single-step breakpoint)"
}
+ -re "Cannot insert breakpoint.*Cannot access memory.*$gdb_prompt $" {
+ setup_kfail gdb/8841 "nios2*-*-linux*"
+ fail "$test (could not insert single-step breakpoint)"
+ }
-re "done = 1;.*${gdb_prompt} $" {
send_gdb "$exit_cmd\n"
exp_continue -continue_timer
@@ -203,6 +207,7 @@ proc advancei { cmd } {
# don't gracefully fall back to single-stepping.
setup_kfail gdb/8841 "i?86-*-linux*"
setup_kfail gdb/8841 "*-*-openbsd*"
+ setup_kfail gdb/8841 "nios2-*-linux*"
fail "$test (could not set breakpoint)"
return
}