-
Notifications
You must be signed in to change notification settings - Fork 17.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
x/tools/gopls: sigpanic in persistent.(*mapNode).forEach (bad SP) #71115
Comments
cc @prattmic |
I would expect to see morestack as well, though I need to double check to be certain. But besides that, the stack check should be at line +0, not +1. i.e., we report the call to morestack as the same line number as the |
The only fallible code on the offending line is two parameter spills, so this can't be a stack overflow, it must be a bad SP.
|
Issue created by stacks.
This stack looks wrong, perhaps another example of the off-by-one problems in the traceback?
(Is it possible that somehow the tree has become a cyclic graph and what we are seeing is a stack overflow? The line number supports that, but I would expect the failure in that case to occur in
runtime.morestack_noctxt
.)This stack
dVh6PA
was reported by telemetry:crash/crash
runtime.throw:+9
runtime.sigpanic:+33
golang.org/x/tools/gopls/internal/util/persistent.(*mapNode).forEach:+1
golang.org/x/tools/gopls/internal/util/persistent.(*mapNode).forEach:+4
golang.org/x/tools/gopls/internal/util/persistent.(*mapNode).forEach:+4
golang.org/x/tools/gopls/internal/util/persistent.(*mapNode).forEach:+4
golang.org/x/tools/gopls/internal/util/persistent.(*mapNode).forEach:+6
golang.org/x/tools/gopls/internal/util/persistent.(*mapNode).forEach:+6
golang.org/x/tools/gopls/internal/util/persistent.(*mapNode).forEach:+6
golang.org/x/tools/gopls/internal/util/persistent.(*mapNode).forEach:+4
golang.org/x/tools/gopls/internal/util/persistent.(*mapNode).forEach:+4
golang.org/x/tools/gopls/internal/util/persistent.(*mapNode).forEach:+6
golang.org/x/tools/gopls/internal/util/persistent.(*mapNode).forEach:+6
golang.org/x/tools/gopls/internal/util/persistent.(*mapNode).forEach:+4
golang.org/x/tools/gopls/internal/util/persistent.(*mapNode).forEach:+4
golang.org/x/tools/gopls/internal/util/persistent.(*mapNode).forEach:+4
The text was updated successfully, but these errors were encountered: