PINE: Disallow access to pages with custom VTLB handlers#14588
Merged
Conversation
Previously the declaration didn't match the definition, so you couldn't actually call it.
Contributor
|
Sadly it's not actually thread safe for it to write to normal guest RAM either because of the JIT block invalidation. I wonder if it would be better to queue up PINE commands and run them on the main thread. |
Member
Author
Hah, I was literally just about to open an issue about that when you commented. Thanks for bringing it up originally. |
56ca52f to
3c9ecfc
Compare
F0bes
approved these changes
Jun 28, 2026
F0bes
left a comment
Member
There was a problem hiding this comment.
How am I going to try and drain the hardware FIFOs asynchronously now :( </3
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description of Changes
Rationale behind Changes
Calling arbitrary hardware peripherals from the PINE thread is definitely not safe.
The vtlb_ramRead declaration previously didn't match its definition. I ended up changing the definition since it's slightly cleaner, and on my machine it ended up being slightly faster in a little microbenchmark I wrote.
(edit: To clarify, this is an initial fix I wanted to get in until we figure out what to do about #14589)
Suggested Testing Steps
Test some PINE clients.
Did you use AI to help find, test, or implement this issue or feature?
No.