]> Cypherpunks repositories - gostls13.git/commit
runtime: fix runtime-gdb.py when switching sp value
authorLynn Boger <laboger@linux.vnet.ibm.com>
Tue, 4 Dec 2018 20:15:27 +0000 (15:15 -0500)
committerLynn Boger <laboger@linux.vnet.ibm.com>
Fri, 7 Dec 2018 17:11:55 +0000 (17:11 +0000)
commit048988a0f14f74c0a27efe93699221bc49b7873c
tree2ce455824c11d841f3450033f93971e59da7ca46
parent578667f4b534974f28909dbc34bce7fe1686c5d3
runtime: fix runtime-gdb.py when switching sp value

After a recent change to runtime-gdb_test.go the ppc64le builder
has had intermittent failures. The failures occur when trying to
invoke the goroutineCmd function to display the backtrace for
a selected goroutine. There is nothing wrong with the testcase
but it seems to intermittently leave goroutines in a state
where an error can occur.

The error message indicates that the problem occurs when trying
to change the sp back to the original after displaying the
stacktrace for the goroutine.

gdb.error: Attempt to assign to an unmodifiable value.

After some searching I found that this error message can happen
if the sp register is changed when on a frame that is not the
top-most frame. To fix the problem, frame 0 is selected before
changing the value of sp. This fixes the problem in my
reproducer environment, and hopefully will fix the problem on
the builder.

Updates #28679

Change-Id: I329bc95b30f8c95acfb161b0d9cfdcbd917a1954
Reviewed-on: https://go-review.googlesource.com/c/152540
Run-TryBot: Lynn Boger <laboger@linux.vnet.ibm.com>
Reviewed-by: Austin Clements <austin@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
src/runtime/runtime-gdb.py