PowerPC: bp-permanent.exp, kill-after-signal fix

Fix changes that didn't make it into commit:
dd9cd55e99.

Fix missing -wrap on gdb_test_multiple in gdb.base/kill-after-signal.exp
that is causing regression test on x86_64-linux with taskset -c 0.
This commit is contained in:
Carl Love 2022-05-06 21:49:22 +00:00
parent 1fe8486103
commit 301fe55e9c
2 changed files with 18 additions and 12 deletions

View File

@ -260,28 +260,31 @@ proc test {always_inserted sw_watchpoint} {
-re "Program received signal SIGTRAP.*$gdb_prompt $" {
fail $test
}
-re ".*signal handler called.*$gdb_prompt $" {
# PowerPC Linux kernel patchs:
-re "signal handler called.*$gdb_prompt $" {
# After PowerPC Linux kernel commit:
#
# commit: 0138ba5783ae0dcc799ad401a1e8ac8333790df9
# powerpc/64/signal: Balance return predictor
# stack in signal trampoline.
#
# The kernel places an additional brctl instruction
# in the vdso to call the user hadler.
# in the vdso to call the user handler.
#
# And then this commit:
#
# commit 24321ac668e452a4942598533d267805f291fdc9
# powerpc/64/signal: Fix regression in
# __kernel_sigtramp_rt64() semantics
#
# Updates the semantics of __kernel_sigtramp_rt64().
# It adds a new symbol to serve as a jump target from
# updates the semantics of __kernel_sigtramp_rt64().
# It added a new symbol to serve as a jump target from
# the kernel to the trampoline.
#
# The net result of these changes is that gdb stops
# at __kernel_start_sigtramp_rt64. Need to do one
# more stepi to reach the expected location in the user
# signal handler.
gdb_test "p \$pc" ".*__kernel_start_sigtramp_rt64.*" \
gdb_test "p \$pc" "__kernel_start_sigtramp_rt64.*" \
"in kernel code"
gdb_test "stepi" "handler .*" $test
}

View File

@ -39,24 +39,27 @@ gdb_test "continue" "Program received signal SIGUSR1, .*"
set test "handler"
gdb_test_multiple "stepi" $test {
-re "\r\nhandler .*" {
-re -wrap "\r\nhandler .*" {
pass $test
}
-re ".*signal handler called.*$gdb_prompt $" {
# PowerPC Linux kernel patchs:
-re "signal handler called.*$gdb_prompt $" {
# After PowerPC Linux kernel commit:
#
# commit: 0138ba5783ae0dcc799ad401a1e8ac8333790df9
# powerpc/64/signal: Balance return predictor
# stack in signal trampoline.
#
# The kernel places an additional brctl instruction
# in the vdso to call the user hadler.
# in the vdso to call the user handler.
#
# And then this commit:
#
# commit 24321ac668e452a4942598533d267805f291fdc9
# powerpc/64/signal: Fix regression in
# __kernel_sigtramp_rt64() semantics
#
# Updates the semantics of __kernel_sigtramp_rt64().
# It adds a new symbol to serve as a jump target from
# updates the semantics of __kernel_sigtramp_rt64().
# It added a new symbol to serve as a jump target from
# the kernel to the trampoline.
#
# The net result of these changes is that gdb stops