-
Notifications
You must be signed in to change notification settings - Fork 5.2k
Add a transport package with libmono-profiler-aot.so on Android #65401
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
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this PR produce the package? Was going to download and look at it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So I manually tested the build artifact, and I'm seeing:
02-18 16:56:20.751 20237 20237 W monodroid: Initializing profiler with options: aot:port=9999,output=/data/user/0/com.mono.profiler.hellomaui/files/.__override__/profile.aotprofile
02-18 16:56:20.752 20237 20237 W monodroid: The 'aot' profiler wasn't found in the main executable nor could it be loaded from 'libmono-profiler-aot.so'.
It is inside the .apk:
lib\arm64-v8a\libmono-profiler-aot.so
I reverted to the old files I built myself, and those seem to work. It can load:
02-18 17:04:21.449 26961 26961 W monodroid: Looking for profiler init symbol 'mono_profiler_init_aot'? 0x7000c7855c
Is there enough changes in main, where a build from this PR wouldn't work alongside release/6.0
?
@jonathanpeppers is what you're trying to build easy so that we can test the same thing? |
It looks like the symbol for
The binary I have that works:
So then I looked at all symbols with
This symbol wasn't there before, would this cause an issue? |
Yes, you're going to need a lib that is 1-1 with the runtime version you're using. I can generate one from |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I manually tested a build based on release/6.0
and it seems to work:
https://dev.azure.com/dnceng/internal/_build/results?buildId=1627363&view=results
Read total 380759 bytes...
Summary:
Modules: 30
Types: 966
Methods: 3,969
Going to write the profile to 'custom.aprof'
Since the transport package is most useful in release/6.0, we shouldn't merge this to main just yet. |
Draft Pull Request was automatically closed for inactivity. Please let us know if you'd like to reopen it. |
This is partially cursed, as runtime.git's packaging infra is opinionated about e.g. overriding PackageID