[release/10.0] [mono] Allocate helper page with mono_valloc so it doesn't confuse instruments #120293
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.
Backport of #120060 to release/10.0
/cc @BrzVlad
Customer Impact
Profiling with instruments doesn't work on maui maccatalyst/ios primarily when interpreter is enabled.
Regression
This is not really a regression on maui, but the problematic code is usually executed when interpreter is enabled. Given that on Xamarin the interpreter was less likely to be enabled, this could be a regression for some users.
Testing
Tested locally on ios and maccatalyst with complex enough applications that trigger this.
Risk
This fix just changes the way we allocate the page that we use to trigger memory barrier. I believe the risk of this change is low, but we are relying on undocumented side effects in order to trigger the process wide memory barrier (even before this change), so there is a chance for unforeseen side effects.