From: Sandra Loosemore <sandra@codesourcery.com>
To: Yao Qi <qiyaoltc@gmail.com>, <gdb-patches@sourceware.org>
Subject: Re: [patch] unbreak nios2-*-linux* testing
Date: Mon, 06 Jul 2015 16:34:00 -0000 [thread overview]
Message-ID: <559AAD97.4020500@codesourcery.com> (raw)
In-Reply-To: <5592AE67.9080905@codesourcery.com>
[-- Attachment #1: Type: text/plain, Size: 1241 bytes --]
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
[-- Attachment #2: gdb-testsuite.log --]
[-- Type: text/x-log, Size: 284 bytes --]
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.
[-- Attachment #3: gdb-testsuite.patch --]
[-- Type: text/x-patch, Size: 2723 bytes --]
diff --git a/gdb/testsuite/gdb.base/sigaltstack.exp b/gdb/testsuite/gdb.base/sigaltstack.exp
index b65ea48..59a6c17 100644
--- a/gdb/testsuite/gdb.base/sigaltstack.exp
+++ b/gdb/testsuite/gdb.base/sigaltstack.exp
@@ -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} $" {
diff --git a/gdb/testsuite/gdb.base/sigbpt.exp b/gdb/testsuite/gdb.base/sigbpt.exp
index ac1378f..a53a71c 100644
--- a/gdb/testsuite/gdb.base/sigbpt.exp
+++ b/gdb/testsuite/gdb.base/sigbpt.exp
@@ -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
diff --git a/gdb/testsuite/gdb.base/siginfo.exp b/gdb/testsuite/gdb.base/siginfo.exp
index 1ae87dd..45365a5 100644
--- a/gdb/testsuite/gdb.base/siginfo.exp
+++ b/gdb/testsuite/gdb.base/siginfo.exp
@@ -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
diff --git a/gdb/testsuite/gdb.base/sigstep.exp b/gdb/testsuite/gdb.base/sigstep.exp
index 3c9454c..413f6de 100644
--- a/gdb/testsuite/gdb.base/sigstep.exp
+++ b/gdb/testsuite/gdb.base/sigstep.exp
@@ -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
}
next prev parent reply other threads:[~2015-07-06 16:34 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-06-30 14:59 Sandra Loosemore
2015-07-06 16:34 ` Sandra Loosemore [this message]
2015-07-14 7:42 ` Yao Qi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=559AAD97.4020500@codesourcery.com \
--to=sandra@codesourcery.com \
--cc=gdb-patches@sourceware.org \
--cc=qiyaoltc@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).