Google Play New problem : 64bits

All topics about ZGameEditor goes here.

Moderator: Moderators

User avatar
Ats
Posts: 791
Joined: Fri Sep 28, 2012 10:05 am
Contact:

Re: Google Play New problem : 64bits

Post by Ats »

Yeah, that's what I thought by watching the memory charts. They seem good and stable. Even when the app crash.
So I really don't know... Just displaying this bitmap expression crashed twice after a few seconds but a lot of tries. No external libraries.

Code: Select all

int u = round(X*31), v = round(Y*31);

if(u == 0 || u == 31 || v == 0 || v == 31)
{
  Pixel = 1;
}
else
{
  Pixel.R = X;
  Pixel.G = Y;
  Pixel.B = 1-X;
}
Then I managed to get the same result just by calling RefreshContent on a BitmapNoise.
And now that I've combined the two to get an app that could crash more often, it hasn't crashed for two entire Arcane episodes...

Oh lol, just as I was writing that, I took the phone, and it just crashed as I moved it. The Build fingerprint: 'google/cheetah/cheetah:14/AP2A.240905.003/12231197:user/release-keys' one...
That is so weird. Could that be coming from the sensors, maybe? Or the java part, with its garbage collector?

So I activated the DEBUG in Zge.java and I'll search a bit in that direction.

I tried with a friend's phone different from mine, just in case, and it is crashing too.
My good old pixel 3a's battery is finely dead, so I can not test the pure android 32 version. I'll find another old device somewhere and verify once again that it doesn't crash like the 64.

Edit:
I've been running tests on an android 32/64 device with only the 32 bits libZgeAndroid.so, it is rock solid.
User avatar
Ats
Posts: 791
Joined: Fri Sep 28, 2012 10:05 am
Contact:

Re: Google Play New problem : 64bits

Post by Ats »

I've been playing with the -C option for the compiler.

-Cr Range checking
With this, the app crash right from the start:
Build fingerprint: 'google/cheetah/cheetah:14/AP2A.240905.003/12231197:user/release-keys'
Abort message: 'Scudo ERROR: corrupted chunk header at address 0x20000797259d8d0'
#00 0x000000000005d8e4 /apex/com.android.runtime/lib64/bionic/libc.so (abort+164) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#01 0x0000000000048d18 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::die()+8) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#02 0x00000000000499ec /apex/com.android.runtime/lib64/bionic/libc.so (scudo::reportRawError(char const*)+28) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#03 0x000000000004995c /apex/com.android.runtime/lib64/bionic/libc.so (scudo::ScopedErrorReport::~ScopedErrorReport()+12) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#04 0x0000000000049ac0 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::reportHeaderCorruption(void*)+96) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#05 0x000000000004bab4 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::Allocator<scudo::AndroidNormalConfig, &(scudo_malloc_postinit)>::deallocate(void*, scudo::Chunk::Origin, unsigned long, unsigned long)+276) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#06 0x00000000000167d4 /system/lib64/libminikin.so (minikin::LocaleListCache::~LocaleListCache()+180) (BuildId: cb2fcdd785402a59a10ad7ebf01b7976)
#07 0x000000000005e490 /apex/com.android.runtime/lib64/bionic/libc.so (__cxa_finalize+144) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#08 0x0000000000062f18 /apex/com.android.runtime/lib64/bionic/libc.so (exit+24) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#09 0x000000000003a710 /data/app/~~_HnHtkDWbCE7m2ZLIUYsjA==/com.txori.omeganaut-zvXn2K_4lyq9uPAs7LC31A==/lib/arm64/libzgeandroid.so (SYSTEM_$$__HALTPROC$LONGINT+8) (BuildId: 5091380e85fa41f650e2db1ad5ee84fbff2ad389)
-Ci IO-checking
We get this rather long crash log when the problem is randomly here:
Build fingerprint: 'google/cheetah/cheetah:14/AP2A.240905.003/12231197:user/release-keys'
Abort message: 'Check failed: code != nullptr java.lang.String java.lang.String.fastSubstring(int, int)'
#00 0x000000000005d8e4 /apex/com.android.runtime/lib64/bionic/libc.so (abort+164) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#01 0x000000000093075c /apex/com.android.art/lib64/libart.so (art::Runtime::Abort(char const*)+344) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#02 0x00000000000160fc /apex/com.android.art/lib64/libbase.so (android::base::SetAborter(std::__1::function<void (char const*)>&&)::$_0::__invoke(char const*)+80) (BuildId: 42d41ca7c77853791d096606e7186547)
#03 0x00000000000156d0 /apex/com.android.art/lib64/libbase.so (android::base::LogMessage::~LogMessage()+516) (BuildId: 42d41ca7c77853791d096606e7186547)
#04 0x0000000000316694 /apex/com.android.art/lib64/libart.so (void art::StackVisitor::WalkStack<(art::StackVisitor::CountTransitions)0>(bool)+6916) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#05 0x000000000039db74 /apex/com.android.art/lib64/libart.so (art::Thread::GetCurrentMethod(unsigned int*, bool, bool) const+396) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#06 0x0000000000500418 /apex/com.android.art/lib64/libart.so (art::Thread::DumpStack(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, unwindstack::AndroidLocalUnwinder&, bool, bool) const+340) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#07 0x0000000000502230 /apex/com.android.art/lib64/libart.so (art::DumpCheckpoint::Run(art::Thread*)+216) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#08 0x00000000005419c4 /apex/com.android.art/lib64/libart.so (art::ThreadList::RunCheckpoint(art::Closure*, art::Closure*, bool)+684) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#09 0x0000000000501b64 /apex/com.android.art/lib64/libart.so (art::ThreadList::Dump(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, bool)+292) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#10 0x00000000009344b4 /apex/com.android.art/lib64/libart.so (art::AbortState::Dump(std::__1::basic_ostream<char, std::__1::char_traits<char> >&) const+204) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#11 0x00000000009308cc /apex/com.android.art/lib64/libart.so (art::Runtime::Abort(char const*)+712) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#12 0x00000000000160fc /apex/com.android.art/lib64/libbase.so (android::base::SetAborter(std::__1::function<void (char const*)>&&)::$_0::__invoke(char const*)+80) (BuildId: 42d41ca7c77853791d096606e7186547)
#13 0x00000000000156d0 /apex/com.android.art/lib64/libbase.so (android::base::LogMessage::~LogMessage()+516) (BuildId: 42d41ca7c77853791d096606e7186547)
#14 0x0000000000316694 /apex/com.android.art/lib64/libart.so (void art::StackVisitor::WalkStack<(art::StackVisitor::CountTransitions)0>(bool)+6916) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#15 0x000000000041dd74 /apex/com.android.art/lib64/libart.so (art::JniDecodeReferenceResult(_jobject*, art::Thread*)+512) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#16 0x00000000022f5d94 /memfd:jit-cache (deleted) (offset 0x2000000) (art_jni_trampoline+148)
#17 0x000000000201b304 /memfd:jit-cache (deleted) (offset 0x2000000) (java.lang.String.substring+292)
#18 0x000000000077fa20 /apex/com.android.art/lib64/libart.so (nterp_helper+4016) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#19 0x000000000027e082 /system/framework/framework.jar (android.provider.Settings$NameValueCache.getStringsForPrefixStripPrefix+22)
#20 0x000000000077f9c4 /apex/com.android.art/lib64/libart.so (nterp_helper+3924) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#21 0x000000000027e050 /system/framework/framework.jar (android.provider.Settings$NameValueCache.-$$Nest$mgetStringsForPrefixStripPrefix+0)
#22 0x000000000036de40 /apex/com.android.art/lib64/libart.so (art_quick_invoke_static_stub+640) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#23 0x000000000036725c /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+2048) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#24 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#25 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#26 0x000000000027c720 /system/framework/framework.jar (android.provider.Settings$Config.getStrings+0)
#27 0x0000000000359650 /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.4560577758463694485)+428) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#28 0x0000000000367a78 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#29 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#30 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#31 0x000000000027c748 /system/framework/framework.jar (android.provider.Settings$Config.getStrings+0)
#32 0x00000000003589dc /apex/com.android.art/lib64/libart.so (artQuickToInterpreterBridge+1932) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#33 0x0000000000384498 /apex/com.android.art/lib64/libart.so (art_quick_to_interpreter_bridge+88) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#34 0x000000000077eb08 /apex/com.android.art/lib64/libart.so (nterp_helper+152) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#35 0x00000000000052ac /apex/com.android.configinfrastructure/javalib/framework-configinfrastructure.jar (android.provider.SettingsConfigDataStore.getProperties+12)
#36 0x00000000007807e4 /apex/com.android.art/lib64/libart.so (nterp_helper+7540) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#37 0x000000000000472c /apex/com.android.configinfrastructure/javalib/framework-configinfrastructure.jar (android.provider.DeviceConfig.getPropertiesWithoutOverrides+4)
#38 0x000000000077eb08 /apex/com.android.art/lib64/libart.so (nterp_helper+152) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#39 0x00000000000046fc /apex/com.android.configinfrastructure/javalib/framework-configinfrastructure.jar (android.provider.DeviceConfig.getProperties+0)
#40 0x000000000077eb08 /apex/com.android.art/lib64/libart.so (nterp_helper+152) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#41 0x0000000000004944 /apex/com.android.configinfrastructure/javalib/framework-configinfrastructure.jar (android.provider.DeviceConfig.getProperty+8)
#42 0x000000000077eb08 /apex/com.android.art/lib64/libart.so (nterp_helper+152) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#43 0x0000000000004768 /apex/com.android.configinfrastructure/javalib/framework-configinfrastructure.jar (android.provider.DeviceConfig.getBoolean+0)
#44 0x000000000036de40 /apex/com.android.art/lib64/libart.so (art_quick_invoke_static_stub+640) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#45 0x000000000036725c /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+2048) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#46 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#47 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#48 0x000000000024ee8c /system/framework/framework.jar (android.view.autofill.AutofillFeatureFlags.isFillDialogEnabled+0)
#49 0x0000000000359650 /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.4560577758463694485)+428) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#50 0x0000000000367a78 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#51 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#52 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#53 0x0000000000253300 /system/framework/framework.jar (android.view.autofill.AutofillManager.<init>+0)
#54 0x00000000003589dc /apex/com.android.art/lib64/libart.so (artQuickToInterpreterBridge+1932) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#55 0x0000000000384498 /apex/com.android.art/lib64/libart.so (art_quick_to_interpreter_bridge+88) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#56 0x000000000077fa20 /apex/com.android.art/lib64/libart.so (nterp_helper+4016) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#57 0x0000000000281550 /system/framework/framework.jar (android.app.SystemServiceRegistry$96.createService+32)
#58 0x000000000036db74 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+612) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#59 0x00000000003671e4 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+1928) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#60 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#61 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#62 0x0000000000281568 /system/framework/framework.jar (android.app.SystemServiceRegistry$96.createService+0)
#63 0x00000000003589dc /apex/com.android.art/lib64/libart.so (artQuickToInterpreterBridge+1932) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#64 0x0000000000384498 /apex/com.android.art/lib64/libart.so (art_quick_to_interpreter_bridge+88) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#65 0x00000000020f6424 /memfd:jit-cache (deleted) (offset 0x2000000) (android.app.SystemServiceRegistry$CachedServiceFetcher.getService+708)
#66 0x00000000020f58a0 /memfd:jit-cache (deleted) (offset 0x2000000) (android.app.SystemServiceRegistry.getSystemService+272)
#67 0x00000000020f5540 /memfd:jit-cache (deleted) (offset 0x2000000) (android.app.ContextImpl.getSystemService+688)
#68 0x0000000002143c18 /memfd:jit-cache (deleted) (offset 0x2000000) (android.view.ContextThemeWrapper.getSystemService+184)
#69 0x0000000002143828 /memfd:jit-cache (deleted) (offset 0x2000000) (android.app.Activity.getSystemService+216)
#70 0x00000000020f4c98 /memfd:jit-cache (deleted) (offset 0x2000000) (android.content.Context.getSystemService+152)
#71 0x000000000036db74 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+612) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#72 0x00000000003671e4 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+1928) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#73 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#74 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#75 0x00000000001fc1a4 /system/framework/framework.jar (android.view.ViewRootImpl.getAutofillManager+0)
#76 0x00000000003589dc /apex/com.android.art/lib64/libart.so (artQuickToInterpreterBridge+1932) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#77 0x0000000000384498 /apex/com.android.art/lib64/libart.so (art_quick_to_interpreter_bridge+88) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#78 0x000000000077fa20 /apex/com.android.art/lib64/libart.so (nterp_helper+4016) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#79 0x00000000001fc188 /system/framework/framework.jar (android.view.ViewRootImpl.-$$Nest$mgetAutofillManager+0)
#80 0x000000000036de40 /apex/com.android.art/lib64/libart.so (art_quick_invoke_static_stub+640) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#81 0x000000000036725c /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+2048) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#82 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#83 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#84 0x00000000001f70c4 /system/framework/framework.jar (android.view.ViewRootImpl$EarlyPostImeInputStage.processPointerEvent+0)
#85 0x0000000000359650 /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.4560577758463694485)+428) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#86 0x0000000000367a78 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#87 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#88 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#89 0x00000000001f7064 /system/framework/framework.jar (android.view.ViewRootImpl$EarlyPostImeInputStage.processMotionEvent+0)
#90 0x0000000000359650 /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.4560577758463694485)+428) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#91 0x0000000000367a78 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#92 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#93 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#94 0x00000000001f6fac /system/framework/framework.jar (android.view.ViewRootImpl$EarlyPostImeInputStage.onProcess+0)
#95 0x0000000000359650 /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.4560577758463694485)+428) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#96 0x0000000000367a78 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#97 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#98 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#99 0x00000000001f7770 /system/framework/framework.jar (android.view.ViewRootImpl$InputStage.deliver+0)
#100 0x0000000000359650 /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.4560577758463694485)+428) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#101 0x0000000000367a78 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#102 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#103 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#104 0x0000000000200858 /system/framework/framework.jar (android.view.ViewRootImpl.deliverInputEvent+0)
#105 0x0000000000359650 /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.4560577758463694485)+428) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#106 0x0000000000367a78 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#107 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#108 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#109 0x00000000002017f0 /system/framework/framework.jar (android.view.ViewRootImpl.doProcessInputEvents+0)
#110 0x0000000000359650 /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.4560577758463694485)+428) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#111 0x0000000000367a78 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#112 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#113 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#114 0x00000000002023b0 /system/framework/framework.jar (android.view.ViewRootImpl.enqueueInputEvent+0)
#115 0x0000000000359650 /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.4560577758463694485)+428) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#116 0x0000000000367a78 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#117 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#118 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#119 0x00000000001fae8c /system/framework/framework.jar (android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent+0)
#120 0x0000000000359650 /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.4560577758463694485)+428) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#121 0x0000000000367a78 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#122 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#123 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#124 0x00000000001b70cc /system/framework/framework.jar (android.view.InputEventReceiver.dispatchInputEvent+0)
#125 0x00000000003589dc /apex/com.android.art/lib64/libart.so (artQuickToInterpreterBridge+1932) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#126 0x0000000000384498 /apex/com.android.art/lib64/libart.so (art_quick_to_interpreter_bridge+88) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#127 0x000000000036db74 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+612) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#128 0x000000000036c568 /apex/com.android.art/lib64/libart.so (art::JValue art::InvokeVirtualOrInterfaceWithVarArgs<art::ArtMethod*>(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, art::ArtMethod*, std::__va_list)+812) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#129 0x0000000000753658 /apex/com.android.art/lib64/libart.so (art::JNI<true>::CallVoidMethodV(_JNIEnv*, _jobject*, _jmethodID*, std::__va_list)+128) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#130 0x000000000058e5e8 /apex/com.android.art/lib64/libart.so (art::(anonymous namespace)::CheckJNI::CallMethodV(char const*, _JNIEnv*, _jobject*, _jclass*, _jmethodID*, std::__va_list, art::Primitive::Type, art::InvokeType) (.__uniq.99033978352804627313491551960229047428)+424) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#131 0x00000000005911b0 /apex/com.android.art/lib64/libart.so (art::(anonymous namespace)::CheckJNI::CallVoidMethodV(_JNIEnv*, _jobject*, _jmethodID*, std::__va_list) (.__uniq.99033978352804627313491551960229047428.llvm.8847877519183761714)+72) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#132 0x00000000000e0618 /system/lib64/libandroid_runtime.so (_JNIEnv::CallVoidMethod(_jobject*, _jmethodID*, ...)+120) (BuildId: e0fc1ccfe043ab286e745f48696bc0d8)
#133 0x0000000000154f80 /system/lib64/libandroid_runtime.so (android::NativeInputEventReceiver::consumeEvents(_JNIEnv*, bool, long, bool*)+528) (BuildId: e0fc1ccfe043ab286e745f48696bc0d8)
#134 0x0000000000154ca4 /system/lib64/libandroid_runtime.so (android::NativeInputEventReceiver::handleEvent(int, int, void*)+164) (BuildId: e0fc1ccfe043ab286e745f48696bc0d8)
#135 0x000000000000fe30 /system/lib64/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+704) (BuildId: c07f08c7e5a964a8f8c6bc5c820fb795)
#136 0x000000000018c53c /system/lib64/libandroid_runtime.so (android::android_os_MessageQueue_nativePollOnce(_JNIEnv*, _jobject*, long, int)+44) (BuildId: e0fc1ccfe043ab286e745f48696bc0d8)
#137 0x0000000000384370 /apex/com.android.art/lib64/libart.so (art_quick_generic_jni_trampoline+144) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#138 0x000000000206701c /memfd:jit-cache (deleted) (offset 0x2000000) (android.os.MessageQueue.next+332)
#139 0x0000000002066164 /memfd:jit-cache (deleted) (offset 0x2000000) (android.os.Looper.loopOnce+164)
#140 0x000000000036de40 /apex/com.android.art/lib64/libart.so (art_quick_invoke_static_stub+640) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#141 0x000000000036725c /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+2048) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#142 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#143 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#144 0x00000000001fc4c8 /system/framework/framework.jar (android.os.Looper.loop+0)
#145 0x0000000000359650 /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.4560577758463694485)+428) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#146 0x0000000000367a78 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#147 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#148 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#149 0x00000000001d0e90 /system/framework/framework.jar (android.app.ActivityThread.main+0)
#150 0x00000000003589dc /apex/com.android.art/lib64/libart.so (artQuickToInterpreterBridge+1932) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#151 0x0000000000384498 /apex/com.android.art/lib64/libart.so (art_quick_to_interpreter_bridge+88) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#152 0x000000000036de40 /apex/com.android.art/lib64/libart.so (art_quick_invoke_static_stub+640) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#153 0x00000000003698f4 /apex/com.android.art/lib64/libart.so (_jobject* art::InvokeMethod<(art::PointerSize)8>(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jobject*, _jobject*, unsigned long)+732) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#154 0x00000000006c6738 /apex/com.android.art/lib64/libart.so (art::Method_invoke(_JNIEnv*, _jobject*, _jobject*, _jobjectArray*) (.__uniq.165753521025965369065708152063621506277)+32) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#155 0x0000000000384370 /apex/com.android.art/lib64/libart.so (art_quick_generic_jni_trampoline+144) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#156 0x000000000036db74 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+612) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#157 0x00000000003671e4 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+1928) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#158 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#159 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#160 0x000000000052cd84 /system/framework/framework.jar (com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run+0)
#161 0x00000000003589dc /apex/com.android.art/lib64/libart.so (artQuickToInterpreterBridge+1932) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#162 0x0000000000384498 /apex/com.android.art/lib64/libart.so (art_quick_to_interpreter_bridge+88) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#163 0x0000000000aaaa04 /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (com.android.internal.os.ZygoteInit.main+3188)
#164 0x000000000036de40 /apex/com.android.art/lib64/libart.so (art_quick_invoke_static_stub+640) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#165 0x000000000035936c /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+204) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#166 0x0000000000357320 /apex/com.android.art/lib64/libart.so (art::JValue art::InvokeWithVarArgs<_jmethodID*>(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jmethodID*, std::__va_list)+512) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#167 0x000000000073b6ac /apex/com.android.art/lib64/libart.so (art::JNI<true>::CallStaticVoidMethodV(_JNIEnv*, _jclass*, _jmethodID*, std::__va_list)+104) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#168 0x00000000000e2028 /system/lib64/libandroid_runtime.so (_JNIEnv::CallStaticVoidMethod(_jclass*, _jmethodID*, ...)+104) (BuildId: e0fc1ccfe043ab286e745f48696bc0d8)
#169 0x00000000000edbcc /system/lib64/libandroid_runtime.so (android::AndroidRuntime::start(char const*, android::Vector<android::String8> const&, bool)+844) (BuildId: e0fc1ccfe043ab286e745f48696bc0d8)
#170 0x00000000000025b8 /system/bin/app_process64 (main+1240) (BuildId: ef4184b9c5506fa60d94dabc30dbf989)
#171 0x0000000000057044 /apex/com.android.runtime/lib64/bionic/libc.so (__libc_init+116) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
-Co Check overflow of integer operations
Werdly enough, I don't get to have any crash log when the app crash with that flag
Build fingerprint: 'google/cheetah/cheetah:14/AP2A.240905.003/12231197:user/release-keys'
#00 0x0000000000000010 <anonymous:7a68775000>
-Ct Stack checking
Build fingerprint: 'google/cheetah/cheetah:14/AP2A.240905.003/12231197:user/release-keys'
Abort message: 'Scudo ERROR: corrupted chunk header at address 0x2000079725a7530'
#00 0x000000000005d8e4 /apex/com.android.runtime/lib64/bionic/libc.so (abort+164) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#01 0x0000000000048d18 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::die()+8) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#02 0x00000000000499ec /apex/com.android.runtime/lib64/bionic/libc.so (scudo::reportRawError(char const*)+28) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#03 0x000000000004995c /apex/com.android.runtime/lib64/bionic/libc.so (scudo::ScopedErrorReport::~ScopedErrorReport()+12) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#04 0x0000000000049ac0 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::reportHeaderCorruption(void*)+96) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#05 0x000000000004bab4 /apex/com.android.runtime/lib64/bionic/libc.so (scudo::Allocator<scudo::AndroidNormalConfig, &(scudo_malloc_postinit)>::deallocate(void*, scudo::Chunk::Origin, unsigned long, unsigned long)+276) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#06 0x00000000000a6358 /system/lib64/libgui.so (android::SurfaceComposerClient::Transaction::~Transaction()+648) (BuildId: 56d12d65b10d783f22d1e62fe5c50cd4)
#07 0x00000000000e44c0 /system/lib64/libgui.so (android::SurfaceComposerClient::Transaction::~Transaction()+16) (BuildId: 56d12d65b10d783f22d1e62fe5c50cd4)
#08 0x0000000002300efc /memfd:jit-cache (deleted) (offset 0x2000000) (art_jni_trampoline+140)
#09 0x00000000022bf85c /memfd:jit-cache (deleted) (offset 0x2000000) (libcore.util.NativeAllocationRegistry$CleanerThunk.run+156)
#10 0x00000000022bf268 /memfd:jit-cache (deleted) (offset 0x2000000) (sun.misc.Cleaner.clean+248)
#11 0x000000000036db74 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+612) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#12 0x00000000003671e4 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+1928) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#13 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#14 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#15 0x000000000012b6fc /apex/com.android.art/javalib/core-oj.jar (java.lang.ref.ReferenceQueue.enqueuePending+0)
#16 0x0000000000359650 /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.4560577758463694485)+428) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#17 0x0000000000367a78 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#18 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#19 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#20 0x000000000002c164 /apex/com.android.art/javalib/core-libart.jar (java.lang.Daemons$ReferenceQueueDaemon.runInternal+0)
#21 0x0000000000359650 /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.4560577758463694485)+428) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#22 0x0000000000367a78 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#23 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#24 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#25 0x000000000002b314 /apex/com.android.art/javalib/core-libart.jar (java.lang.Daemons$Daemon.run+0)
#26 0x0000000000359650 /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.__uniq.112435418011751916792819755956732575238.llvm.4560577758463694485)+428) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#27 0x0000000000367a78 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, bool, art::JValue*)+4124) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#28 0x000000000076e170 /apex/com.android.art/lib64/libart.so (void art::interpreter::ExecuteSwitchImplCpp<false>(art::interpreter::SwitchImplContext*)+12208) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#29 0x00000000003869d8 /apex/com.android.art/lib64/libart.so (ExecuteSwitchImplAsm+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#30 0x0000000000117a28 /apex/com.android.art/javalib/core-oj.jar (java.lang.Thread.run+0)
#31 0x00000000003589dc /apex/com.android.art/lib64/libart.so (artQuickToInterpreterBridge+1932) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#32 0x0000000000384498 /apex/com.android.art/lib64/libart.so (art_quick_to_interpreter_bridge+88) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#33 0x000000000036db74 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+612) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#34 0x0000000000359324 /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+132) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#35 0x0000000000944438 /apex/com.android.art/lib64/libart.so (_ZN3art9ArtMethod14InvokeInstanceILc86ETpTncJEEENS_6detail12ShortyTraitsIXT_EE4TypeEPNS_6ThreadENS_6ObjPtrINS_6mirror6ObjectEEEDpNS3_IXT0_EE4TypeE+60) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#36 0x00000000006209f4 /apex/com.android.art/lib64/libart.so (art::Thread::CreateCallback(void*)+1344) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#37 0x00000000006204a4 /apex/com.android.art/lib64/libart.so (art::Thread::CreateCallbackWithUffdGc(void*)+8) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
#38 0x000000000006efbc /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+204) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
#39 0x0000000000060d60 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64) (BuildId: 1d36f8ae6e0af6158793abea7d4f4f2b)
Maybe the long log can be helpful. I don't know... :lol:

And just for trying, I replaced all LongInt such as
function dlopen ( Name : PAnsiChar; Flags : longint) : Pointer; cdecl; external 'dl';
function dlclose( Lib : Pointer) : Longint; cdecl; external 'dl';
by NativeInt. It compiles, it runs, but it still randomly crash.
User avatar
VilleK
Site Admin
Posts: 2365
Joined: Mon Jan 15, 2007 4:50 pm
Location: Stockholm, Sweden
Contact:

Re: Google Play New problem : 64bits

Post by VilleK »

Those logs doesn't look helpful to me.

Do you have threads enabled again now? Or does setting Tasks.Enabled=False help?
User avatar
Ats
Posts: 791
Joined: Fri Sep 28, 2012 10:05 am
Contact:

Re: Google Play New problem : 64bits

Post by Ats »

I just tried with threads disabled. Then thread disabled and Platform_GetCpuCount returning exit(1).
It still crashes with the same error message. I made a list of all the functions in ZPlatform_Android.inc, and I'm trying to disable them, or return a fake result, to see if I can narrow down the origin of the problem.

Funny thing is that on my old Android 32/64 device that I recovered to do 32 bits tests yesterday, it has greater chances to crash in 64 bits mode. Maybe because it has less memory, or because I deactivated the threads, I don't know. It feels like anything can make it randomly crash at this point... :lol:
But it is easier to see if it crashes or not than on the newer 64 bits only hardware.

Edit:
Oh, I've just noticed this message during the compilation of the 64bit library, not present in the 32 bit one.
Note: DWARF debug information cannot be used with smart linking on this target, switching to static linking
But I do not compile using -gw. Only -g. So maybe it's just a notification message?
I don't get this message when I compile in release mode.
User avatar
VilleK
Site Admin
Posts: 2365
Joined: Mon Jan 15, 2007 4:50 pm
Location: Stockholm, Sweden
Contact:

Re: Google Play New problem : 64bits

Post by VilleK »

You can also check the ifdef android code in other places.

Try insert a "exit;" as first line in ZBitmap GLESPixelsFromTexture.

And also insert "exit;" as first line in ZOpenGL functions: fakePushAttrib and fakePopAttrib.

That will make the visuals look terrible but would be good to know if it helps against crashing.
User avatar
Ats
Posts: 791
Joined: Fri Sep 28, 2012 10:05 am
Contact:

Re: Google Play New problem : 64bits

Post by Ats »

In ZOpenGL.pas, is there a reason why this is deactivated?

Code: Select all

  {$ifdef android}
  //SetExceptionMask([exInvalidOp, exDenormalized, exZeroDivide, exOverflow, exUnderflow, exPrecision]);
  {$endif}
I tried uncommenting it, but it doesn't solve anything.
But if it is not useful, then I don't think this is needed too:

Code: Select all

uses
...
  {$ifdef android}
  ,Math
  {$endif}

I also found a seemingly unrelated bug that I can reproduce at will. When I launch Omeganaut on the Retroid Pocket 3, the FPS drops from 60 to 2 during the initial sound generation at the start of the game. If I press a physical button (like A or B) during this time, it can easily crash and produce the following log:
Build fingerprint: 'UNISOC/ums512_1h10_Natv/ums512_1h10:11/RP1A.201005.001/27217:user/release-keys'
#00 0x000000000005ddd8 /data/app/~~_ehHxv8X8yUgenFrq4QaQQ==/com.txori.omeganaut-ATY7FanwHidOb1PlbDpe8Q==/lib/arm64/libzgeandroid.so (ZEXPRESSIONS$_$TEXPMISC_$__$$_EXECUTE$PEXECUTIONENVIRONMENT+328) (BuildId: bdc58d041a392249efd1f8863e36bebc73c6ea1b)
Which corresponds to line 1750: V := PInteger(P)^;

I already tried replacing
V : integer;
by
V : NativeInt;

and

V := PInteger(P)^;
by
V := PNativeUInt(P)^;

But that's not it...
User avatar
VilleK
Site Admin
Posts: 2365
Joined: Mon Jan 15, 2007 4:50 pm
Location: Stockholm, Sweden
Contact:

Re: Google Play New problem : 64bits

Post by VilleK »

Can you please DM me the latest version of your Omeganaut zgeproj file so I can look at it and see if I notice anything out of the ordinary? Especially around the sound generation since you mentioned that.
User avatar
Ats
Posts: 791
Joined: Fri Sep 28, 2012 10:05 am
Contact:

Re: Google Play New problem : 64bits

Post by Ats »

I decided to start deactivating features from top to bottom, and I might have a breakthrough: the 64-bit version of ZGE *doesn’t seem* to crash randomly when ZApplication / UpdateScreen is deactivated. I tested my game extensively on the Retroid console using the physical buttons and listening to sounds, since the touchscreen is also deactivated.

I'l continue digging the procedure TZApplication.UpdateScreen when I'll get back home.
User avatar
Ats
Posts: 791
Joined: Fri Sep 28, 2012 10:05 am
Contact:

Re: Google Play New problem : 64bits

Post by Ats »

Back at it!
Today, I discovered that Android Studio handles the logcat very efficiently when a real phone is connected to the computer. I noticed some warnings appearing quite frequently:

Code: Select all

2024-12-03 14:00:26.318   680-593   gralloc4                and...graphics.allocator-V1-service  W  Unable to set buffer name VRI[ZgeActivity]#0(BLAST Consumer)0: File name too long
2024-12-03 14:00:26.318   680-592   gralloc4                and...graphics.allocator-V1-service  W  Unable to set buffer name SurfaceView[com.txori.omeganaut/org.zgameeditor.ZgeActivity]#1(BLAST Consumer)1: File name too long
Do these sound familiar to you?

Edit:
In fact, there is a clear difference between a device that runs ZGE perfectly (Retroid Pocket 3+):

Code: Select all

2024-12-03 15:17:19.789  6078-6133  ZgeAndroid              com.txori.omeganaut                  I  SurfaceCreated: OpenGL ES 3.2 v1.r27p0-01eac0.bfc9f89b34c882ca6dc6566781e4f990
2024-12-03 15:17:19.790  6078-6133  ZgeAndroid              com.txori.omeganaut                  I  SurfaceChanged
2024-12-03 15:17:19.798   533-533   gralloc4                and...raphics.allocator@4.0-service  I  allocate: id=215000000d6, hal_format=RGBA8888, mali_format=RGBA8888, afbc=SPLIT, usage=GPU_RW|HWC|BACKBUF, size=752x1336, stride=752, name=SurfaceView - com.txori.omeganaut/org.zgameeditor.ZgeActivity#0
2024-12-03 15:17:19.804   533-533   gralloc4                and...raphics.allocator@4.0-service  I  allocate: id=215000000d7, hal_format=RGBA8888, mali_format=RGBA8888, afbc=SPLIT, usage=GPU_RW|HWC|BACKBUF, size=752x1336, stride=752, name=com.txori.omeganaut/org.zgameeditor.ZgeActivity#0
2024-12-03 15:17:19.907   533-696   gralloc4                and...raphics.allocator@4.0-service  I  allocate: id=215000000e1, hal_format=RGBA8888, mali_format=RGBA8888, afbc=SPLIT, usage=GPU_RW|HWC|BACKBUF, size=752x1336, stride=752, name=com.txori.omeganaut/org.zgameeditor.ZgeActivity#0
2024-12-03 15:17:20.117   533-696   gralloc4                and...raphics.allocator@4.0-service  I  allocate: id=215000000e3, hal_format=RGBA8888, mali_format=RGBA8888, afbc=SPLIT, usage=GPU_RW|HWC|BACKBUF, size=752x1336, stride=752, name=SurfaceView - com.txori.omeganaut/org.zgameeditor.ZgeActivity#0
2024-12-03 15:17:20.952   891-3183  WindowManager           system_server                        I  Input focus has changed to Window{fccbd23 u0 com.txori.omeganaut/org.zgameeditor.ZgeActivity}
2024-12-03 15:17:20.956   891-910   WindowManager           system_server                        D  update input focus to Window{fccbd23 u0 com.txori.omeganaut/org.zgameeditor.ZgeActivity} , run:true
2024-12-03 15:17:20.974   891-3183  InputDispatcher         system_server                        I  Focus entered window: Window{fccbd23 u0 com.txori.omeganaut/org.zgameeditor.ZgeActivity} in display 0
2024-12-03 15:17:20.994   533-696   gralloc4                and...raphics.allocator@4.0-service  I  allocate: id=215000000e5, hal_format=RGBA8888, mali_format=RGBA8888, afbc=SPLIT, usage=GPU_RW|HWC|BACKBUF, size=752x1336, stride=752, name=com.txori.omeganaut/org.zgameeditor.ZgeActivity#0
2024-12-03 15:17:29.224   533-696   gralloc4                and...raphics.allocator@4.0-service  I  allocate: id=215000000e9, hal_format=RGBA8888, mali_format=RGBA8888, afbc=SPLIT, usage=GPU_RW|HWC|BACKBUF, size=752x1336, stride=752, name=SurfaceView - com.txori.omeganaut/org.zgameeditor.ZgeActivity#0
And a pure 64bit phone that constantly randomly crashes ZGE (Pixel 7):

Code: Select all

2024-12-03 15:09:13.514  1860-2974  CoreBackPreview         system_server                        D  Window{90136ec u0 com.txori.omeganaut/org.zgameeditor.ZgeActivity}: Setting back callback OnBackInvokedCallbackInfo{mCallback=android.window.IOnBackInvokedCallback$Stub$Proxy@b40d5d8, mPriority=0, mIsAnimationCallback=false}
2024-12-03 15:09:13.555 30702-30736 ZgeAndroid              zygote64                             I  SurfaceCreated: OpenGL ES 3.2 v1.r48p0-01eac0.5df5d77a113107e1e50b593bc8073ba3
2024-12-03 15:09:13.555 30702-30736 ZgeAndroid              zygote64                             I  SurfaceChanged
2024-12-03 15:09:13.563   680-13800 gralloc4                and...graphics.allocator-V1-service  W  Unable to set buffer name VRI[ZgeActivity]#0(BLAST Consumer)0: File name too long
2024-12-03 15:09:13.564   680-745   gralloc4                and...graphics.allocator-V1-service  W  Unable to set buffer name SurfaceView[com.txori.omeganaut/org.zgameeditor.ZgeActivity]#1(BLAST Consumer)1: File name too long
2024-12-03 15:09:13.583   680-745   gralloc4                and...graphics.allocator-V1-service  W  Unable to set buffer name SurfaceView[com.txori.omeganaut/org.zgameeditor.ZgeActivity]#1(BLAST Consumer)1: File name too long
2024-12-03 15:09:13.684  1860-1929  ActivityTaskManager     system_server                        I  Displayed com.txori.omeganaut/org.zgameeditor.ZgeActivity for user 0: +500ms
2024-12-03 15:09:13.731   680-745   gralloc4                and...graphics.allocator-V1-service  W  Unable to set buffer name SurfaceView[com.txori.omeganaut/org.zgameeditor.ZgeActivity]#1(BLAST Consumer)1: File name too long
2024-12-03 15:09:16.698   680-13800 gralloc4                and...graphics.allocator-V1-service  W  Unable to set buffer name SurfaceView[com.txori.omeganaut/org.zgameeditor.ZgeActivity]#1(BLAST Consumer)1: File name too long
2024-12-03 15:09:41.710 30686-30687 artd                    artd                                 I  Dex parent of /data/app/~~cekHz_JCLZYXdcUX02lUqw==/com.example.zgeproject-L7yBc3PYBJZGF21z-QzLJA==/base.apk is not writable: Permission denied
2024-12-03 15:09:41.710 30686-30687 artd                    artd                                 I  GetBestInfo checking odex in dalvik-cache (/data/dalvik-cache/arm64/data@app@~~cekHz_JCLZYXdcUX02lUqw==@com.example.zgeproject-L7yBc3PYBJZGF21z-QzLJA==@base.apk@classes.dex)
2024-12-03 15:09:41.710 30686-30687 artd                    artd                                 I  Loading /data/dalvik-cache/arm64/data@app@~~cekHz_JCLZYXdcUX02lUqw==@com.example.zgeproject-L7yBc3PYBJZGF21z-QzLJA==@base.apk@classes.dex with executable: 0
2024-12-03 15:09:41.710 30686-30687 artd                    artd                                 I  OatFileAssistant test for existing oat file /data/dalvik-cache/arm64/data@app@~~cekHz_JCLZYXdcUX02lUqw==@com.example.zgeproject-L7yBc3PYBJZGF21z-QzLJA==@base.apk@classes.dex: File /data/dalvik-cache/arm64/data@app@~~cekHz_JCLZYXdcUX02lUqw==@com.example.zgeproject-L7yBc3PYBJZGF21z-QzLJA==@base.apk@classes.vdex does not exist.
2024-12-03 15:09:41.710 30686-30687 artd                    artd                                 I  GetBestInfo checking odex next to the dex file (/data/app/~~cekHz_JCLZYXdcUX02lUqw==/com.example.zgeproject-L7yBc3PYBJZGF21z-QzLJA==/oat/arm64/base.odex)
2024-12-03 15:09:41.710 30686-30687 artd                    artd                                 I  Loading /data/app/~~cekHz_JCLZYXdcUX02lUqw==/com.example.zgeproject-L7yBc3PYBJZGF21z-QzLJA==/oat/arm64/base.odex with executable: 0
2024-12-03 15:09:41.711 30686-30687 artd                    artd                                 I  Successfully loaded /data/app/~~cekHz_JCLZYXdcUX02lUqw==/com.example.zgeproject-L7yBc3PYBJZGF21z-QzLJA==/oat/arm64/base.odex with executable: 0
2024-12-03 15:09:41.713 30686-30687 artd                    artd                                 I  /data/app/~~cekHz_JCLZYXdcUX02lUqw==/com.example.zgeproject-L7yBc3PYBJZGF21z-QzLJA==/oat/arm64/base.odex is kOatUpToDate with filter speed-profile
User avatar
VilleK
Site Admin
Posts: 2365
Joined: Mon Jan 15, 2007 4:50 pm
Location: Stockholm, Sweden
Contact:

Re: Google Play New problem : 64bits

Post by VilleK »

Ats wrote: Tue Dec 03, 2024 1:16 pm Today, I discovered that Android Studio handles the logcat very efficiently when a real phone is connected to the computer. I noticed some warnings appearing quite frequently:

Code: Select all

2024-12-03 14:00:26.318   680-593   gralloc4                and...graphics.allocator-V1-service  W  Unable to set buffer name VRI[ZgeActivity]#0(BLAST Consumer)0: File name too long
I don't recognize that warning and I don't find anything useful when I search for it.

Can Android Studio provide some more information when it crashes? Maybe it has extra debugger options that can be enabled.
User avatar
Ats
Posts: 791
Joined: Fri Sep 28, 2012 10:05 am
Contact:

Re: Google Play New problem : 64bits

Post by Ats »

These are the only tools I can run, but I haven’t found anything relevant using them.
Screenshot 2024-12-03 175428.png
Screenshot 2024-12-03 175428.png (28.27 KiB) Viewed 2010 times
Maybe I could achieve more if I managed to import the entire ZGE source code into the current Android Studio project. But I still haven’t figured out how to do that, as the Gradle documentation feels quite opaque to me at the moment.
User avatar
Ats
Posts: 791
Joined: Fri Sep 28, 2012 10:05 am
Contact:

Re: Google Play New problem : 64bits

Post by Ats »

Turns out I got fooled again, as ZGE 64 is crashing on the Retroid Pocket too... It's just, sometimes it can run for a while, and some other times, it can randomly crash 10 times in a row. So I don't know if "Unable to set buffer name..." is relevant.

I'm going to make some very simple and specific examples to see if they crash in 64 bit, such as heavily feeding an array with floats, for starters.

Code: Select all

<?xml version="1.0" encoding="iso-8859-1" ?>
<ZApplication Name="App" Caption="Debug Background" GLBase="1" ClearColor="0 0 0 1" ScreenMode="0" MouseVisible="255" FileVersion="2" AndroidPackageName="com.txori.debug_background">
  <OnLoaded>
    <ZExpression Expression="ArrayFloat.SizeDim1 = 0;"/>
  </OnLoaded>
  <OnUpdate>
    <ZExpression>
      <Expression>
<![CDATA[ArrayFloat.SizeDim1++;
if(ArrayFloat.SizeDim1 > 1000) ArrayFloat.SizeDim1 = 1;

for(int i=0; i<ArrayFloat.SizeDim1; i++)
{
  ArrayFloat[i]=App.Time;
  trace(intToStr(i)+" "+intToStr(ArrayFloat[i]));
}]]>
      </Expression>
    </ZExpression>
  </OnUpdate>
  <Content>
    <Array Name="ArrayFloat" SizeDim1="81"/>
  </Content>
</ZApplication>
Result: NOT crashing.

Next, BitmapNoise...

Code: Select all

<?xml version="1.0" encoding="iso-8859-1" ?>
<ZApplication Name="App" Caption="Debug Background" ClearColor="0 0 0 1" ScreenMode="0" MouseVisible="255" FileVersion="2" AndroidPackageName="com.txori.debug_background">
  <OnLoaded>
    <ZExpression>
      <Expression>
<![CDATA[App.ClearColor.A = 1;

BackgroundNoise.Offset = 0.2 * rnd();
BackgroundNoise.ZHeight = 200 * rnd();

@RefreshContent(Component: CloudsBitmap);]]>
      </Expression>
    </ZExpression>
  </OnLoaded>
  <OnUpdate>
    <ZExpression>
      <Expression>
<![CDATA[BackgroundNoise.ZHeight += App.DeltaTime * 0.5;
@RefreshContent(Component: CloudsBitmap);]]>
      </Expression>
    </ZExpression>
  </OnUpdate>
  <OnRender>
    <UseMaterial Material="CloudsMaterial"/>
    <RenderTransform Scale="10 5 1"/>
    <RenderMesh Mesh="BackgroundMesh"/>
  </OnRender>
  <Content>
    <Group Comment="Background">
      <Children>
        <Material Name="CloudsMaterial">
          <Textures>
            <MaterialTexture Texture="CloudsBitmap" TextureWrapMode="1"/>
          </Textures>
        </Material>
        <Bitmap Name="CloudsBitmap" Width="128">
          <Producers>
            <BitmapNoise Name="BackgroundNoise" StartingOctaves="2" Offset="0.3" Persistence="0.5" ZHeight="324.7986" Tile="255"/>
          </Producers>
        </Bitmap>
        <Mesh Name="BackgroundMesh">
          <Producers>
            <MeshBox Name="BackgroundMeshSize" Grid2DOnly="255"/>
          </Producers>
        </Mesh>
      </Children>
    </Group>
  </Content>
</ZApplication>
This one is crashing. And I got a complete logcat, not only the "zge" related one.
Attachments
log.zip
(12.94 KiB) Downloaded 47 times
User avatar
Ats
Posts: 791
Joined: Fri Sep 28, 2012 10:05 am
Contact:

Re: Google Play New problem : 64bits

Post by Ats »

So, to test something else (R1 trigger on PC corresponds to L2 on Android…), I plugged in my good old NVIDIA Shield. It turns out it crashes during the loading of ZGEBullet in the warmup phase of Omeganaut, just like on your phone, Ville. So I started revisiting the topic of minSdkVersion and targetSdkVersion, and I found this:

It seems possible that the minimum API level required to run 64-bit code is 21, not 19. So, I recompiled everything, and I’m currently testing it to see if it still crashes.

Edit:
Nope... It is still randomly crashing :roll:
User avatar
VilleK
Site Admin
Posts: 2365
Joined: Mon Jan 15, 2007 4:50 pm
Location: Stockholm, Sweden
Contact:

Re: Google Play New problem : 64bits

Post by VilleK »

These messages are interesting:

"call to OpenGL ES API with no current context (logged once per thread)"

I see that GLSurfaceView has options to log OpenGL calls.

Try adding this line:

Code: Select all

setDebugFlags(DEBUG_CHECK_GL_ERROR | DEBUG_LOG_GL_CALLS);
At line 91 in Zge.java, just before the line "Renderer = new CRenderer()"

And see if any more info shows up in the log.
User avatar
Ats
Posts: 791
Joined: Fri Sep 28, 2012 10:05 am
Contact:

Re: Google Play New problem : 64bits

Post by Ats »

Just to be sure, there's a zge.java in ZGE zgameeditor-master\Build\android\java\src\org\zgameeditor, and it is slightly different from the zge.java that is copied in the Omeganaut\com.txori.omeganaut\src\org\zgameeditor folder when building for Android. Is that normal?
The first one is needed to build the library and the second to build the app, right?

So I added setDebugFlags(DEBUG_CHECK_GL_ERROR | DEBUG_LOG_GL_CALLS); to both...

Here's the new log:
log.zip
(121.14 KiB) Downloaded 56 times
Edit:
I added traces to be able to answer my own question: only the zge.java from the zge project(Omeganaut) is used.
Last edited by Ats on Sun Dec 08, 2024 1:07 am, edited 1 time in total.
Post Reply