目录

问题1. 运行英雄联盟手游时audio.service挂掉

  • 问题描述:

运行英雄联盟手游,出现“Limited by the size of pthread_mutex_t, 32 bit bionic libc only accepts pid <= 65535”问题,导致audio.service挂掉,游戏卡在黑屏界面。

  • 解决方法:

  在Ubuntu执行下列命令:

1sudo sysctl -w kernel.pid_max=65535 or add kernel.pid_max=65535 to /etc/sysctl.d/99-sysctl.conf

 也可以在安卓rc文件添加 “write /proc/sys/kernel/pid_max 65535”

问题2. 运行英雄联盟手游,进入练习模式,点击某个人物图标,程序奔溃

  • 问题描述:

log显示是应用读取ro.build.fingerprint属性,但该属性值超过92个字节导致崩溃,当读取的属性值超过92个字节时,应该使用其它接口,但应用并没有做这样的兼容逻辑

  • 解决方法:

  修改ro.build.fingerprint值在编译时的生成逻辑,使之小于92字节。

读ro.build.fingerprint的问题解决后,又遇到其它崩溃问题,和安卓的java虚拟机art相关

1#00 pc 00000000000008d8 [vdso] () 2#01 pc 0000000000044ac4 /apex/com.android.runtime/lib64/bionic/libc.so (abort+160) 3#02 pc 0000000000069ee8 /apex/com.android.art/lib64/libvixl.so (_ZN4vixl7aarch6423UseScratchRegisterScope20AcquireNextAvailableEPNS0_10CPURegListE+92) 4#03 pc 00000000002106f4 /apex/com.android.art/lib64/libart-compiler.so (_ZN3art5arm6418CodeGeneratorARM6418GenerateFrameEntryEv+152) 5#04 pc 000000000006850c /apex/com.android.art/lib64/libart-compiler.so (_ZN3art13CodeGenerator7CompileEPNS_13CodeAllocatorE+464) 6#05 pc 000000000012fc38 /apex/com.android.art/lib64/libart-compiler.so (_ZNK3art18OptimizingCompiler10TryCompileEPNS_14ArenaAllocatorEPNS_10ArenaStackEPNS_19CodeVectorAllocatorERKNS_18DexCompilationUnitEPNS_9ArtMethodEbbbPNS_24VariableSizedHandleScopeE+3312) 7#06 pc 0000000000133ddc /apex/com.android.art/lib64/libart-compiler.so (_ZN3art18OptimizingCompiler10JitCompileEPNS_6ThreadEPNS_3jit12JitCodeCacheEPNS3_15JitMemoryRegionEPNS_9ArtMethodEbbPNS3_9JitLoggerE+1048) 8#07 pc 000000000004ddc8 /apex/com.android.art/lib64/libart-compiler.so (_ZN3art3jit11JitCompiler13CompileMethodEPNS_6ThreadEPNS0_15JitMemoryRegionEPNS_9ArtMethodEbb+232) 9#08 pc 000000000020faa4 /apex/com.android.art/lib64/libart.so (_ZN3art3jit3Jit13CompileMethodEPNS_9ArtMethodEPNS_6ThreadEbbb+992) 10#09 pc 0000000000217c5c /apex/com.android.art/lib64/libart.so (_ZN3art3jit14JitCompileTask3RunEPNS_6ThreadE+668) 11#10 pc 00000000004a00d8 /apex/com.android.art/lib64/libart.so (_ZN3art16ThreadPoolWorker3RunEv+108) 12#11 pc 000000000049fbcc /apex/com.android.art/lib64/libart.so (_ZN3art16ThreadPoolWorker8CallbackEPv+192) 13#12 pc 00000000000a78ec /apex/com.android.runtime/lib64/bionic/libc.so (_ZL15__pthread_startPv+64) 14#13 pc 0000000000046a84 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)

看了一下相关代码,发现是art 编译优化产生arm64相关的代码(不确定是否是汇编代码)出错,调用了abort。有时崩溃又不同:

1E [CrashSightReport]: # REPORT ID: 7b067821-e9f5-4600-b6f1-f9b476497e1b 2E CRASH : signal 11 (SIGSEGV), code -6 (?), fault addr 000027a000004cd7 3E CRASH : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** 4E CRASH : Build type 'Release', Scripting Backend 'il2cpp', CPU 'arm64-v8a' 5E CRASH : Build fingerprint: 'fde/phytium_fde_arm64/fde_arm64:11/RQ3A.211001.001/20230801.140011:userdebug/test-keys' 6E CRASH : Revision: '0' 7E CRASH : pid: 19671, tid: 20654, name: Thread-11 >>> com.tencent.lolm <<< 8E CRASH : x0 0000000000000001 x1 0000fffde0b33de0 x2 0000fffde0b33ba0 x3 0000000000000002 9E CRASH : x4 0000000000000000 x5 0000000000000000 x6 0000000000000000 x7 0000000000000000 10E CRASH : x8 0000fffde0b33d68 x9 0000fffde0b33d58 x10 0000000000000000 x11 0000000000000000 11E CRASH : x12 0000000000000001 x13 0000000000000020 x14 fffffffffc000000 x15 fffe000000000000 12E CRASH : x16 0000ffffaf8d9930 x17 0000ffffaf8ce8a8 x18 0000000000000064 x19 0000fffeb75526b0 13E CRASH : x20 0000fffde0b33ba0 x21 0000fffde0b33d20 x22 00000000ffffffff x23 0000fffde0b33d40 14E CRASH : x24 0000fffde0b33d58 x25 0000fffde0adb69c x26 0000fffde0adbac0 x27 0000fffde0342a00 15E CRASH : x28 0000ffff10aed000 x29 0000fffeb75524f0 x30 0000fffebd727fa4 16E CRASH : sp 0000fffeb75524e0 pc 0000fffebd727ff8 pstate 0000000080000000 17E CRASH : backtrace: 18E CRASH : #00 pc 00000000000008d8 [vdso] () 19E CRASH : #01 pc 0000000000797ff4 /vendor/lib64/dri/libgallium_dri.so () 20E CRASH : #02 pc 0000000000775fa0 /vendor/lib64/dri/libgallium_dri.so () 21E CRASH : #03 pc 0000000000796f98 /vendor/lib64/dri/libgallium_dri.so () 22E CRASH : #04 pc 0000000000796e58 /vendor/lib64/dri/libgallium_dri.so () 23E CRASH : #05 pc 000000000076906c /vendor/lib64/dri/libgallium_dri.so () 24E CRASH : #06 pc 00000000006f6a84 /vendor/lib64/dri/libgallium_dri.so () 25E CRASH : #07 pc 00000000007234bc /vendor/lib64/dri/libgallium_dri.so () 26E CRASH : #08 pc 0000000000729428 /vendor/lib64/dri/libgallium_dri.so () 27E CRASH : #09 pc 00000000002d04a0 /vendor/lib64/dri/libgallium_dri.so () 28E CRASH : #10 pc 00000000002d10c4 /vendor/lib64/dri/libgallium_dri.so () 29E CRASH : #11 pc 00000000002d18b8 /vendor/lib64/dri/libgallium_dri.so () 30E CRASH : #12 pc 00000000002c10ac /vendor/lib64/dri/libgallium_dri.so () 31E CRASH : #13 pc 00000000002bf96c /vendor/lib64/dri/libgallium_dri.so () 32E CRASH : #14 pc 000000000028a970 /vendor/lib64/dri/libgallium_dri.so () 33E CRASH : #15 pc 000000000020e5d4 /vendor/lib64/dri/libgallium_dri.so () 34E CRASH : #16 pc 00000000007b0204 /data/app/~~NSczyoWjlN6NckyW_OjCmQ==/com.tencent.lolm-CjkgYJu7jdL-Ix8Qi5Ej_g==/lib/arm64/libunity.so () 35E CRASH : #17 pc 00000000007ae6f4 /data/app/~~NSczyoWjlN6NckyW_OjCmQ==/com.tencent.lolm-CjkgYJu7jdL-Ix8Qi5Ej_g==/lib/arm64/libunity.so () 36E CRASH : #18 pc 00000000007ad860 /data/app/~~NSczyoWjlN6NckyW_OjCmQ==/com.tencent.lolm-CjkgYJu7jdL-Ix8Qi5Ej_g==/lib/arm64/libunity.so () 37E CRASH : #19 pc 000000000020ed48 /data/app/~~NSczyoWjlN6NckyW_OjCmQ==/com.tencent.lolm-CjkgYJu7jdL-Ix8Qi5Ej_g==/lib/arm64/libunity.so () 38E CRASH : #20 pc 000000000052f41c /data/app/~~NSczyoWjlN6NckyW_OjCmQ==/com.tencent.lolm-CjkgYJu7jdL-Ix8Qi5Ej_g==/lib/arm64/libunity.so () 39E CRASH : #21 pc 000000000085f23c /data/app/~~NSczyoWjlN6NckyW_OjCmQ==/com.tencent.lolm-CjkgYJu7jdL-Ix8Qi5Ej_g==/lib/arm64/libunity.so () 40E CRASH : #22 pc 00000000008600c8 /data/app/~~NSczyoWjlN6NckyW_OjCmQ==/com.tencent.lolm-CjkgYJu7jdL-Ix8Qi5Ej_g==/lib/arm64/libunity.so () 41E CRASH : #23 pc 0000000000858a78 /data/app/~~NSczyoWjlN6NckyW_OjCmQ==/com.tencent.lolm-CjkgYJu7jdL-Ix8Qi5Ej_g==/lib/arm64/libunity.so () 42E CRASH : #24 pc 00000000003e9dd8 /data/app/~~NSczyoWjlN6NckyW_OjCmQ==/com.tencent.lolm-CjkgYJu7jdL-Ix8Qi5Ej_g==/lib/arm64/libunity.so () 43E CRASH : #25 pc 00000000000a78ec /apex/com.android.runtime/lib64/bionic/libc.so (_ZL15__pthread_startPv+64) 44E CRASH : #26 pc 0000000000046a84 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64) 45E CRASH : other thread is trapped; signum = 11 46E InputEventReceiver: Exception dispatching input event. 47D AndroidRuntime: Shutting down VM 48E AndroidRuntime: FATAL EXCEPTION: main 49E AndroidRuntime: Process: com.tencent.lolm, PID: 19671 50E AndroidRuntime: java.lang.Error: signal 11 (SIGSEGV), code -6 (?), fault addr 000027a000004cd7 51E AndroidRuntime: Build fingerprint: 'fde/phytium_fde_arm64/fde_arm64:11/RQ3A.211001.001/20230801.140011:userdebug/test-keys' 52E AndroidRuntime: Revision: '0' 53E AndroidRuntime: pid: 19671, tid: 20654, name: Thread-11 >>> com.tencent.lolm <<< 54E AndroidRuntime: x0 0000000000000001 x1 0000fffde0b33de0 x2 0000fffde0b33ba0 x3 0000000000000002 55E AndroidRuntime: x4 0000000000000000 x5 0000000000000000 x6 0000000000000000 x7 0000000000000000 56E AndroidRuntime: x8 0000fffde0b33d68 x9 0000fffde0b33d58 x10 0000000000000000 x11 0000000000000000 57E AndroidRuntime: x12 0000000000000001 x13 0000000000000020 x14 fffffffffc000000 x15 fffe000000000000 58E AndroidRuntime: x16 0000ffffaf8d9930 x17 0000ffffaf8ce8a8 x18 0000000000000064 x19 0000fffeb75526b0 59E AndroidRuntime: x20 0000fffde0b33ba0 x21 0000fffde0b33d20 x22 00000000ffffffff x23 0000fffde0b33d40 60E AndroidRuntime: x24 0000fffde0b33d58 x25 0000fffde0adb69c x26 0000fffde0adbac0 x27 0000fffde0342a00 61E AndroidRuntime: x28 0000ffff10aed000 x29 0000fffeb75524f0 x30 0000fffebd727fa4 62E AndroidRuntime: sp 0000fffeb75524e0 pc 0000fffebd727ff8 pstate 0000000080000000 63E AndroidRuntime: 64E AndroidRuntime: at [vdso].(:0) 65E AndroidRuntime: at libgallium_dri.(:0) 66E AndroidRuntime: at libgallium_dri.(:0) 67E AndroidRuntime: at libgallium_dri.(:0) 68E AndroidRuntime: at libgallium_dri.(:0) 69E AndroidRuntime: at libgallium_dri.(:0) 70E AndroidRuntime: at libgallium_dri.(:0) 71E AndroidRuntime: at libgallium_dri.(:0) 72E AndroidRuntime: at libgallium_dri.(:0) 73E AndroidRuntime: at libgallium_dri.(:0) 74E AndroidRuntime: at libgallium_dri.(:0) 75E AndroidRuntime: at libgallium_dri.(:0) 76E AndroidRuntime: at libgallium_dri.(:0) 77E AndroidRuntime: at libgallium_dri.(:0) 78E AndroidRuntime: at libgallium_dri.(:0) 79E AndroidRuntime: at libgallium_dri.(:0) 80E AndroidRuntime: at libunity.(:0) 81E AndroidRuntime: at libunity.(:0) 82E AndroidRuntime: at libunity.(:0) 83E AndroidRuntime: at libunity.(:0) 84E AndroidRuntime: at libunity.(:0) 85E AndroidRuntime: at libunity.(:0) 86E AndroidRuntime: at libunity.(:0) 87E AndroidRuntime: at libunity.(:0) 88E AndroidRuntime: at libunity.(:0) 89E AndroidRuntime: at libc._ZL15__pthread_startPv(_ZL15__pthread_startPv:64) 90E AndroidRuntime: at libc.__start_thread(__start_thread:64) 91 923D引擎unity调用了mesa相关接口(external/mesa/src/mesa/main/dlist.c:dlist_alloc)导致崩溃,waydroid使用mesa实现的opengles
  • 解决方法:

 暂无解决方法