-
Notifications
You must be signed in to change notification settings - Fork 26.7k
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
signal 11 (SIGSEGV), code 1 (SEGV_MAPERR) - crash with armeabi-v7a (ARM 32-bit) #106510
Comments
Are you able to reproduce this? It would help to get some disassembly around the location of the crash for a few top frames. If possible it would help to get libapp.so which is crashing. (Alternatively if you tell me exact app version I should be able to download the APK from the Store and get libapp.so this way). |
The exact app version is eBay Motors 2.37.0 (45869). We've pushed a couple of hot fixes for that version in hopes to suppress this via other approaches (e.g. split apk's and fat apk's), so if not readily accessible, pls let us know and we can find a way to provide the original aab. |
We can also reproduce the issue at will if needed. However, as @iarredondocastro said, version 2.37.0 (45869) is the version to try to grab from the Store (though it's not the latest). That version was published in Android App Bundle format. Note that the same crash also happened when using split APK's with app version 2.37.1, and apparently also with the fat APK in app version 2.37.2. |
I forgot to mention previously -- the crash doesn't happen in debug mode, only in release builds. |
@mraleph I reproduced the crash and used llvm-objdump to attempt some disassembly around the top few frames. Please let me know if you need something else. The trace was like this:
And the llvm-objdump disassembly:
|
@doc-rj-ebay Thanks! I have started to look at this (managed to download version 45869). Do you happen to have original symbols or DWARF debug information for What kind of devices does this reproduce on? Any non-ARM64 device? What I can gather from looking at the disassembly and the crash dump from the first comment is that we hit |
Thank you @mraleph! It's only reproducible with the armeabi-v7a variant. This last one (with llvm-objdump) was on my Pixel 4a after installing like this:
I'll send to your email what I believe to be the so with symbols for the same trace. It was taken from: build/app/intermediates/merged_native_libs/release/out/lib/armeabi-v7a/ Note that these symbols may not match the trace in the original comment, as I rebuilt locally after enabling ndk symbols in build.gradle. |
Also, if it helps, this was the fuller logcat dump from the crash mentioned in this comment.
|
I think I know what is going on. Stub |
We were able to track down the particular code that triggered this scenario and were able to work around it. In particular... invoking an asynchronous write in the flutter_localstorage package during the first build cycle of the Widget tree seemed to trigger this. If we added artificial delays to this write, the crash did not occur. We ended up workin around it a different way, but sharing in case it is helpful. We wondered if it had something to do with this in particular: https://github.com/lesnitsky/flutter_localstorage/blob/master/lib/src/directory/directory.dart |
@coreysprague this is just a coincidence. You need to hit |
It was calling EnsureIsNewOrRemembered on the slow path which was forgetting to preserve registers around a runtime call. Fixes flutter/flutter#106510 TEST=vm/dart{,_2}/flutter_regress_106510 Cq-Include-Trybots: luci.dart.try:vm-kernel-linux-release-simarm-try,vm-kernel-precomp-linux-release-simarm-try Change-Id: I621e392304fcd1fd643c009fbcde3f88b6f19b7f Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/250168 Reviewed-by: Ryan Macnak <rmacnak@google.com> Commit-Queue: Slava Egorov <vegorov@google.com>
The fix has landed upstream and I have filed cherry-pick request for it. |
This is a patch release that fixes: - Improve code completion for Flutter (issue [#49054][]). - Fix crash on ARM (issue [#106510][]). - Fix compiler crash with Finalizable parameters (issue [#49402][]). [#49054]: #49054 [#106510]: flutter/flutter#106510 [#49402]: #49402 Change-Id: I9a814603d9793b75b764fd0f384e89017e773c50 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/251109 Reviewed-by: Alexander Thomas <athom@google.com> Commit-Queue: William Hesse <whesse@google.com>
It was calling EnsureIsNewOrRemembered on the slow path which was forgetting to preserve registers around a runtime call. Fixes flutter/flutter#106510 TEST=vm/dart{,_2}/flutter_regress_106510 Cq-Include-Trybots: luci.dart.try:vm-kernel-linux-release-simarm-try,vm-kernel-precomp-linux-release-simarm-try Change-Id: I621e392304fcd1fd643c009fbcde3f88b6f19b7f Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/250168 Reviewed-by: Ryan Macnak <rmacnak@google.com> Commit-Queue: Slava Egorov <vegorov@google.com>
This is a patch release that fixes: - Improve code completion for Flutter (issue [#49054][]). - Fix crash on ARM (issue [#106510][]). - Fix compiler crash with Finalizable parameters (issue [#49402][]). [#49054]: #49054 [#106510]: flutter/flutter#106510 [#49402]: #49402 Change-Id: I9a814603d9793b75b764fd0f384e89017e773c50 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/251109 Reviewed-by: Alexander Thomas <athom@google.com> Commit-Queue: William Hesse <whesse@google.com>
Receiving this on Flutter stable 3.0.5, can it be related?
|
This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of |
Steps to Reproduce
App crashes during launch on some devices with armeabi-v7a (ARM 32-bit) only. This crash started happening after upgrading to Flutter 3.
Crash Traces
Firebase Crashlytics does not pick up this crash, and the Play console's output is limited, but here it is:
Here's another example of a crash after reproducing in Firebase Test Lab -- we believe it's a similar (or same) crash as above:
We cannot provide a minimal reproducible sample as we don't know how to reproduce the crash code-wise, it happens immediately during app launch, and it appears to be a low level issue.
flutter doctor -v:
The output below is a close match to the CI env, the only difference being the Android toolchain SDK version was actually 29.0.3 not 30.0.3.
The text was updated successfully, but these errors were encountered: