Open pijnappel opened 5 months ago
@jonathanpeppers thoughts?
Any suggestions on how to track this down? I have no idea where to start looking.
If you can reproduce the crash with extra logging on.
adb shell setprop debug.mono.log default,assembly,mono_log_level=debug,mono_log_mask=all
That might give more information.
As the message mentions the Mono GC (SGen worker
), we can move this to dotnet/runtime for the right folks to look at this.
I was able to reproduce the crash with extended Mono logging. Here is the full logcat:
Stacktrace looks similar to the one in https://github.com/dotnet/runtime/issues/96804. Its fix is in latest 8.0.3 runtime release (not sure how it corresponds to 8.0.7 SR2 series in the top comment). cc @lambdageek
@am11 this is not related to #96804. that had an assertion failure. this one doesn't (at least I can't find one in SIGABRT.log).
all android crash logs look basically like this without symbols.
this isn't really actionable without symbolication @jonathanpeppers
@pijnappel do you know what version of the runtime you are using? 8.0.2? We could probably use dotnet-symbols
and ndk-stack
to get line numbers.
I'm not really sure. I'm usually up to date and install all updates. How do I get the runtime version used by my app? I cannot reproduce the error when compiled in Debug. Is there any doc I can follow to get symbols and ndk-stack?
Something like dotnet tool install --global dotnet-symbol
, then download symbols for all installed libs: sudo dotnet symbol --recurse-subdirectories --timeout 20 --symbols '/usr/share/dotnet/*.so'
, then download for your app: dotnet symbol--timeout 20 --symbols path/to/your-app-binary
(which may or may not fail depending on the form factor). Finally, run the app under debugger (like lldb or gdb).
Description
My app is processing a long running loop generating data and storing it into files. After several hours of running, the app closes and the logcat contains the crash report below:
`03-19 12:59:58.679 2156 2175 E : How can an object and a reference inside it not be in the same block? 03-19 12:59:58.679 2156 2175 F libc : Fatal signal 6 (SIGABRT), code -6 (SI_TKILL) in tid 2175 (SGen worker), pid 2156 (yApp.mobile.xrf)
These random crashes (SIGABRT here, SIGSEGV in a different issue) really prevent us from releasing it for production. We're open to any suggestions on debugging and preventing them. We've now activated further logging of Mono and will add these logs when available.
Steps to Reproduce
We are unable to reproduce this. It just happens randomly
Link to public reproduction project repository
No response
Version with bug
8.0.7 SR2
Is this a regression from previous behavior?
Not sure, did not test other versions
Last version that worked well
Unknown/Other
Affected platforms
Android
Affected platform versions
Android 9
Did you find any workaround?
No response
Relevant log output