aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/testsuite/ChangeLog5
-rw-r--r--gdb/testsuite/gdb.base/disp-step-syscall.exp15
2 files changed, 19 insertions, 1 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index 1ed442f..26705ed 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2012-03-03 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ Setup KFAIL for PR server/13796.
+ * gdb.base/disp-step-syscall.exp (single step over vfork): Setup KFAIL.
+
2012-03-02 Joel Brobecker <brobecker@adacore.com>
* gdb.ada/operator_bp: New testcase.
diff --git a/gdb/testsuite/gdb.base/disp-step-syscall.exp b/gdb/testsuite/gdb.base/disp-step-syscall.exp
index 4cf5529..486701c 100644
--- a/gdb/testsuite/gdb.base/disp-step-syscall.exp
+++ b/gdb/testsuite/gdb.base/disp-step-syscall.exp
@@ -118,7 +118,20 @@ proc disp_step_cross_syscall { syscall } { with_test_prefix "$syscall" {
gdb_test_no_output "set displaced-stepping on"
# Check the address of next instruction of syscall.
- gdb_test "stepi" ".*" "single step over $syscall"
+ if {$syscall == "vfork" && [is_remote target]} {
+ setup_kfail server/13796 "*-*-*"
+ }
+ set test "single step over $syscall"
+ gdb_test_multiple "stepi" $test {
+ -re "Program terminated with signal SIGILL,.*\r\n$gdb_prompt $" {
+ fail $test
+ return
+ }
+ -re "\r\n$gdb_prompt $" {
+ pass $test
+ }
+ }
+
set syscall_insn_next_addr_found [get_hexadecimal_valueof "\$pc" "0"]
set test "single step over $syscall final pc"