Skip to content
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

c18n: Data corruption when trampolines are interrupted #2077

Closed
dpgao opened this issue Apr 2, 2024 · 3 comments · Fixed by #2090
Closed

c18n: Data corruption when trampolines are interrupted #2077

dpgao opened this issue Apr 2, 2024 · 3 comments · Fixed by #2090
Assignees

Comments

@dpgao
Copy link
Contributor

dpgao commented Apr 2, 2024

When a trampoline is interrupted in the middle of constructing a new trusted frame, a half-constructed invalid frame would be left on the trusted stack, which may confuse unwinders.

There are other places in the trampoline where the code assumes that it cannot be interrupted. For example, in the benchmark ABI, the stack pointer is briefly set to zero before calling the stack resolver.

@dpgao dpgao self-assigned this Apr 2, 2024
@rwatson
Copy link
Member

rwatson commented Apr 17, 2024

Work-in-progress at: #2079

@brooksdavis
Copy link
Member

Resolved in #2090

@brooksdavis brooksdavis linked a pull request May 28, 2024 that will close this issue
@dpgao
Copy link
Contributor Author

dpgao commented Jun 1, 2024

Fixed in #2090.

@dpgao dpgao closed this as completed Jun 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants