[PATCH PING Fixup V2] PowerPC: bp-permanent.exp, kill-after-signal fix

Tom de Vries tdevries@suse.de
Wed May 18 07:33:35 GMT 2022


On 5/16/22 17:46, Carl Love wrote:
> Tom:
> 
> I updated the patch per your comments.  Wanted to make sure it looks
> ok.  Thanks for your help on this.
> 

Hi Carl,

LGTM.

Thanks,
- Tom

>                       Carl
> 
> ------------------------------------------------------
> 
> On Tue, 2022-05-10 at 12:07 -0700, Carl Love wrote:
>> Tom, Pedro, GDB maintainers:
>>
>> Per the feedback from Tom, I removed the -wrap that I had added
>> previously to the bp-permanent.exp test.  It was incorrect per Tom's
>> comments.
>>
>> Patch was re-tested on Power 10 with no test failures.
>>
>>                         Carl Love
>>
>> -------------------------------------------------------
> 
> PowerPC: bp-permanent.exp, kill-after-signal fix
> 
> Fix changes that didn't make it into commit:
> dd9cd55e990bcc9f8448cac38d242d53974b3604.
> 
> 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.
> ---
>   gdb/testsuite/gdb.base/bp-permanent.exp      | 15 +++++++++------
>   gdb/testsuite/gdb.base/kill-after-signal.exp | 15 +++++++++------
>   2 files changed, 18 insertions(+), 12 deletions(-)
> 
> diff --git a/gdb/testsuite/gdb.base/bp-permanent.exp b/gdb/testsuite/gdb.base/bp-permanent.exp
> index 21b0bc7bb2d..1ad9a698db8 100644
> --- a/gdb/testsuite/gdb.base/bp-permanent.exp
> +++ b/gdb/testsuite/gdb.base/bp-permanent.exp
> @@ -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
>   		    }
> diff --git a/gdb/testsuite/gdb.base/kill-after-signal.exp b/gdb/testsuite/gdb.base/kill-after-signal.exp
> index fcbec9a1c2e..a3e30a67cc4 100644
> --- a/gdb/testsuite/gdb.base/kill-after-signal.exp
> +++ b/gdb/testsuite/gdb.base/kill-after-signal.exp
> @@ -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


More information about the Gdb-patches mailing list