Bug #118072

【IOVDEV-28890】【IOVDEV-28945】【内部】【VC1】【0095】【台架】【EE环境】【副屏】【文件管理】按名称搜索文件,界面无操作等待几分钟,出现约5-10分钟冻屏

Added by 物联网测试组_CDTS 唐霞 about 2 years ago. Updated about 2 years ago.

Status:CLOSEDStart date:2023-05-23
Priority:UrgentDue date:2023-05-26
Assignee:物联网测试组_CDTS 唐霞 % Done:

100%

Category:冻屏
Target version:-
Need_Info:-- Found Version:01.00.0095.C103
Resolution:FIXED Degrated:--
Severity:Critical Verified Version:
Reproducibility:Occasionally Fixed Version:2023-05-28
Test Type:User Experience Root cause:问题原因:
freeze机制导致,进程在一段时间内被杀除,占用系统性能,导致SystemProperties.set执行逻辑时被延时,卡主了其他系统进程。
问题处理:
引入google的patch处理取消freeze机制,并引入了android13的新patch,同时优化了针对游戏模式的性能优化策略。

Description

【环境信息】:EE环境
【问题出现时间】:20230517 20:00,第23次开机

https://ofs.human-horizons.com/#/download/index/%2BihslvJu4tk%3D
【前提条件】:
【操作步骤】:1.文件管理-右上角菜单栏-放大镜
2、输入Ca,搜索,等待几分钟
【实际结果】
冻屏,输入框光标不再闪动,下滑上滑左右滑手势均无效,等待约5-10分钟后自动恢复
【期望结果】
正常搜索文件
【备注】:卡顿界面见图
【应用版本】:不涉及
【硬件版本号】:/
【副屏版本号】:01.00.0095.C103
【中控版本号】:03.02.0080.C101.03_userdebug_2305121121

内存.jpg (161 KB) CD SYSTEM-夏旭, 2023-05-23 14:32

1684847488121.zip (10.9 MB) CDTS-TEST 周婷, 2023-05-23 21:13

19_42.log (277 KB) CD SYSTEM-夏旭, 2023-05-23 21:46

19_43.log (755 KB) CD SYSTEM-夏旭, 2023-05-23 21:46

19_44.log (880 KB) CD SYSTEM-夏旭, 2023-05-23 21:46

19_45.log (316 KB) CD SYSTEM-夏旭, 2023-05-23 21:46

anr_2023-05-17-19-54-58-215 - system_server (822 KB) CD SYSTEM-夏旭, 2023-05-24 17:11

%e5%86%85%e5%ad%98

Subtasks

Bug #118199: 请确认一下显示驱动 DRM模块下面的报错是否异常CLOSEDCDTS_TEST 王成

History

#1 Updated by CD TEST-方永红 about 2 years ago

  • Subject changed from IOVDEV-28890【内部】【VC1】【0095】【台架】【EE环境】【副屏】【文件管理】按名称搜索文件,界面无操作等待几分钟,出现约5-10分钟冻屏 to 【IOVDEV-28890】【IOVDEV-28945】【内部】【VC1】【0095】【台架】【EE环境】【副屏】【文件管理】按名称搜索文件,界面无操作等待几分钟,出现约5-10分钟冻屏

#2 Updated by CD TPM-王祥林 about 2 years ago

1.问题描述发生是在20:00左右。现有日志中最晚的时间为19:55左右。请确认问题发生时间是否正确。如果不正确请提供正确时间点的日志。
2.从现有的日志发现,有报屏幕端的DTC错误,疑似屏幕端出现了异常。需要和屏厂进一步确认。
01-01 12:42:04.205 0 0 E DTC_Display: screen not ready(0), bl_sta(1), lvl(20)
01-01 12:42:10.133 0 0 E DTC_Display: screen not ready(0), bl_sta(1), lvl(20)
01-01 12:42:16.277 0 0 E DTC_Display: screen not ready(0), bl_sta(1), lvl(20)
01-01 12:42:22.517 0 0 E DTC_Display: screen not ready(0), bl_sta(1), lvl(20)
01-01 12:42:28.454 0 0 E DTC_Display: screen not ready(0), bl_sta(1), lvl(20)
01-01 12:42:34.385 0 0 E DTC_Display: screen not ready(0), bl_sta(1), lvl(20)
01-01 12:42:40.645 0 0 E DTC_Display: screen not ready(0), bl_sta(1), lvl(20)
01-01 12:42:46.901 0 0 E DTC_Display: screen not ready(0), bl_sta(1), lvl(20)
01-01 12:42:53.145 0 0 E DTC_Display: screen not ready(0), bl_sta(1), lvl(20)

#3 Updated by CDTS-TEST 周婷 about 2 years ago

等待客户确认DTC

#4 Updated by CDTS-TEST 周婷 about 2 years ago

  • Severity changed from Major to Critical

#5 Updated by CDTS-TEST 周婷 about 2 years ago

  • Category set to SYSTEM
  • Status changed from New to NEED_INFO
  • Assignee changed from CD FW 曹覃刚 to CD TEST-方永红

#6 Updated by CDTS_TEST 王成 about 2 years ago

  • Status changed from NEED_INFO to ASSIGNED
  • Assignee changed from CD TEST-方永红 to CD TPM-王祥林

客户回复:
1、测试回复,搜索操作后的等待时间没有一直观察屏幕,等几分钟过后再测试时发现冻屏,导完日志时间为20:10 ,推测问题发生时间约为20:00左右,请查看前后10分钟log是否出现异常,或搜索关键字Ca后的log。后续如发现类似现象再追加log。
导出的日志就是历史日志

2、高平平回复:
目前分析IIC显示有异常实际屏端是正常的,双方确认为何IIC收到的DTC与实际情况不符,另外此故障实际表现为:刚上电触控正常->使用过程中冻屏->自动恢复正常,请FSEM协助确认20230517 20:00是否这期间系统卡了?

#7 Updated by CD TPM-王祥林 about 2 years ago

  • Assignee changed from CD TPM-王祥林 to CD SYSTEM-夏旭

宗惠

请帮忙看一下系统哪里卡顿了。

#8 Updated by CD SYSTEM-夏旭 about 2 years ago

1.从测试的说明来看场景看问题应该发生在05-17 19:44:03.537,此时com.android.documentsui APP被杀了
-->(文件管理-右上角菜单栏-放大镜)

/logcat/000023_manual_00018_230517_194740.log:656:05-17 19:47:45.270  1499  1619 I am_pss  : [9656,10020,com.android.documentsui,108872704,102871040,780288,183529472,0,2,10]
./logcat/000023_manual_00024_230517_194920.log:1010:05-17 19:49:34.073 1499 1619 I am_pss : [9656,10020,com.android.documentsui,102824960,98639872,814080,175476736,0,2,9]
./logcat/000023_manual_00032_230517_194009.log:1517:05-17 19:40:21.771 2503 2503 V GameTypeUtils: judge isGame:com.android.documentsui
./logcat/000023_manual_00046_230517_194402.log:471:05-17 19:44:03.533 1499 1738 D ActivityManager: freezing 3669 com.android.documentsui
./logcat/000023_manual_00046_230517_194402.log:472:05-17 19:44:03.533 1499 1738 E ActivityManager: Unable to freeze binder for 3669 com.android.documentsui
./logcat/000023_manual_00046_230517_194402.log:475:05-17 19:44:03.535 1499 1738 D ActivityManager: froze 3669 com.android.documentsui
./logcat/000023_manual_00046_230517_194402.log:476:05-17 19:44:03.535 1499 1738 I am_freeze: [3669,com.android.documentsui]
./logcat/000023_manual_00046_230517_194402.log:477:05-17 19:44:03.535 1499 1738 E ActivityManager: Unable to freeze binder for 3669 com.android.documentsui
./logcat/000023_manual_00046_230517_194402.log:478:05-17 19:44:03.537 1499 1738 I ActivityManager: Killing 3669:com.android.documentsui/u0a20 (adj 940): Unable to freeze binder interface
./logcat/000023_manual_00046_230517_194402.log:479:05-17 19:44:03.537 1499 1738 I am_kill : [0,3669,com.android.documentsui,940,Unable to freeze binder interface]
./logcat/000023_manual_00046_230517_194402.log:500:05-17 19:44:03.599 1499 29056 I WindowManager: WIN DEATH: Window{9b8c62c u0
com.android.documentsui/com.android.documentsui.files.FilesActivity}

#9 Updated by CD SYSTEM-夏旭 about 2 years ago

1.可能是低内存导致com.android.documentsui被杀,还有com.baidu.appsearch(与文件查找有关)被杀,

bugreport-PassengerDisplay_CN-SKQ1.220201.001-2023-05-17-20-07-46.txt:55104:05-17 19:39:38.690  1000  1499  1738 I am_freeze: [14750,com.baidu.appsearch:bdservice_v1]
bugreport-PassengerDisplay_CN-SKQ1.220201.001-2023-05-17-20-07-46.txt:55105:05-17 19:39:38.696 1000 1499 1738 I am_kill : [0,14750,com.baidu.appsearch:bdservice_v1,925,Unable to freeze
binder interface]
bugreport-PassengerDisplay_CN-SKQ1.220201.001-2023-05-17-20-07-46.txt:55106:05-17 19:39:38.735 1000 1499 18470 I am_proc_died: [0,14750,com.baidu.appsearch:bdservice_]

2.内存只有117M左右(bugreport-figure_0517200746.zip)

#10 Updated by CD SYSTEM-夏旭 about 2 years ago

  • % Done changed from 0 to 10

#11 Updated by 物联网项目组-RD3_CDTS 周飞 about 2 years ago

导致该问题的原因是内存占用过高,com.android.documentsui被杀之前的日志暂未找到冻屏的log;下一步:将内存刷至剩余117M左右,再次验证。

#12 Updated by CDTS-TEST 周婷 about 2 years ago

车架号VIN:HRYTTESTVINMGM400

解压密码: vin号后6位

#13 Updated by CDTS-TEST 周婷 about 2 years ago

物联网测试组_CDTS 唐霞 wrote:

【环境信息】:EE环境
【问题出现时间】:20230517 20:00,第23次开机

https://ofs.human-horizons.com/#/download/index/%2BihslvJu4tk%3D
【前提条件】:
【操作步骤】:1.文件管理-右上角菜单栏-放大镜
2、输入Ca,搜索,等待几分钟
【实际结果】
冻屏,输入框光标不再闪动,下滑上滑左右滑手势均无效,等待约5-10分钟后自动恢复
【期望结果】
正常搜索文件
【备注】:卡顿界面见图
【应用版本】:不涉及
【硬件版本号】:/
【副屏版本号】:01.00.0095.C103
【中控版本号】:03.02.0080.C101.03_userdebug_2305121121

----------------------------------------------------------------
客户最新bug 描述更新:
【环境信息】EE环境
【问题出现时间】:20230518 9点58分( 第145次开机)
【前提条件】:车机上电(KL30ON ,KL15 ON)
1.副屏在使用应用宝下载多个应用

2.进入文件界面

【实际结果】

文件管理界面冻屏,不响应任何操作。

【期望结果】
副屏文件管理界面正常响应操作。
【备注】:

此问题出现一次,约15分钟后自行恢复。

车架号VIN:HRYTTESTVINMGM400

log地址:https://ofs.human-horizons.com/#/download/index/sSmI9%2FemHK8%3D

视频地址:https://ofs.human-horizons.com/#/download/index/c6%2B%2FTqCb474%3D

【影响版本】:副屏:01.00.0095.c103
【硬件版本号】:/
【是否能恢复】:可恢复

#14 Updated by CDTS_TEST 王成 about 2 years ago

  • Fixed Version set to 2023-05-26

#15 Updated by CD SYSTEM-夏旭 about 2 years ago

1. 新给的log 中过滤出17:42 到 17:45 的log 未发现明显异常
具体内容请查看相关文件

#16 Updated by CDTS-TEST 周婷 about 2 years ago

  • Category changed from SYSTEM to 冻屏

讨论方向定位

#17 Updated by CD SYSTEM-夏旭 about 2 years ago

Hi 覃刚:

1. 从测试的测试场景看,正在打开 【文件管理】按名称搜索文件,界面无操作等待几分钟

2. 从上面的测试的场景看,文件管理器的APK被杀了

./logcat/000023_manual_00018_230517_194740.log :656:05-17 19:47:45.270  1499  1619 I am_pss  : [9656,10020,com.android.documentsui,108872704,102871040,780288,183529472,0,2,10]
./logcat/000023_manual_00024_230517_194920.log:1010:05-17 19:49:34.073 1499 1619 I am_pss : [9656,10020,com.android.documentsui,102824960,98639872,814080,175476736,0,2,9]
./logcat/000023_manual_00032_230517_194009.log:1517:05-17 19:40:21.771 2503 2503 V GameTypeUtils: judge isGame:com.android.documentsui
./logcat/000023_manual_00046_230517_194402.log:471:05-17 19:44:03.533 1499 1738 D ActivityManager: freezing 3669 com.android.documentsui
./logcat/000023_manual_00046_230517_194402.log:472:05-17 19:44:03.533 1499 1738 E ActivityManager: Unable to freeze binder for 3669 com.android.documentsui

3. 此时system_server 也anr 了,发生的时间是2023-05-17 19:54:58, 与上面描述的界面无操作等待几分钟相符合

具体请查看文件:anr_2023-05-17-19-54-58-215
且每多线程被thread 164线程组阻塞了
164线程 调用栈
"Binder:1499_1F" prio=5 tid=164 Blocked | group="main" sCount=1 ucsCount=0 flags=1 obj=0x133c9ae0 self=0xb400007361cf6a90 | sysTid=32704 nice=-2 cgrp=default sched=0/0 handle=0x713ea3fcb0 | state=S schedstat=( 18927190680 14770598272 89474 ) utm=1298 stm=593 core=6 HZ=100 | stack=0x713e948000-0x713e94a000 stackSize=991KB | held mutexes=
at com.android.server.power.PowerManagerService.updateUidProcStateInternal(PowerManagerService.java:3751)
- waiting to lock <0x0c0384ee> (a java.lang.Object) held by thread 36
at com.android.server.power.PowerManagerService$LocalService.updateUidProcState(PowerManagerService.java:6118)
at com.android.server.am.ActivityManagerService.enqueueUidChangeLocked(ActivityManagerService.java:14555)
at com.android.server.am.OomAdjuster.updateUidsLSP(OomAdjuster.java:1450)
at com.android.server.am.OomAdjuster.updateOomAdjInnerLSP(OomAdjuster.java:1050)
at com.android.server.am.OomAdjuster.performUpdateOomAdjLSP(OomAdjuster.java:736)
at com.android.server.am.OomAdjuster.updateOomAdjLSP(OomAdjuster.java:659)
at com.android.server.am.OomAdjuster.updateOomAdjLocked(OomAdjuster.java:641)
- locked <0x049322b3> (a com.android.server.am.ActivityManagerProcLock)
at com.android.server.am.ActivityManagerService.updateOomAdjLocked(ActivityManagerService.java:14704)
at com.android.server.am.ActiveServices.realStartServiceLocked(ActiveServices.java:4061)
at com.android.server.am.ActiveServices.bringUpServiceLocked(ActiveServices.java:3946)
at com.android.server.am.ActiveServices.bindServiceLocked(ActiveServices.java:2878)
at com.android.server.am.ActivityManagerService.bindIsolatedService(ActivityManagerService.java:12134)
- locked <0x0ab8b4c8> (a com.android.server.am.ActivityManagerService)
at android.app.IActivityManager$Stub.onTransact(IActivityManager.java:2606)
at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:2528)
at android.os.Binder.execTransactInternal(Binder.java:1179)
at android.os.Binder.execTransact(Binder.java:1143)

#18 Updated by CD SYSTEM-夏旭 about 2 years ago

  • Assignee changed from CD SYSTEM-夏旭 to CD FW 曹覃刚

#19 Updated by CD FW 曹覃刚 about 2 years ago

■ 我的分析
----------------
anr_2023-05-17-19-54-58-215

"main" prio=5 tid=1 Blocked | group="main" sCount=1 ucsCount=0 flags=1 obj=0x71866308 self=0xb400007361b9e7b0 | sysTid=1499 nice=-2 cgrp=default sched=0/0 handle=0x7531f2f4f8 | state=S schedstat=( 45270251427 41114985817 175996 ) utm=3285 stm=1241 core=6 HZ=100 | stack=0x7feeae7000-0x7feeae9000 stackSize=8188KB | held mutexes=
at com.android.server.am.ActivityManagerService.getMemoryTrimLevel(ActivityManagerService.java:8688)
- waiting to lock <0x0ab8b4c8> (a com.android.server.am.ActivityManagerService) held by thread 164
at com.android.server.job.JobConcurrencyManager.refreshSystemStateLocked(JobConcurrencyManager.java:493)
at com.android.server.job.JobConcurrencyManager.updateCounterConfigLocked(JobConcurrencyManager.java:503)
at com.android.server.job.JobConcurrencyManager.assignJobsToContextsInternalLocked(JobConcurrencyManager.java:561)
at com.android.server.job.JobConcurrencyManager.assignJobsToContextsLocked(JobConcurrencyManager.java:538)
at com.android.server.job.JobSchedulerService.maybeRunPendingJobsLocked(JobSchedulerService.java:2487)
at com.android.server.job.JobSchedulerService$JobHandler.handleMessage(JobSchedulerService.java:2071)
- locked <0x09cf8bb1> (a java.lang.Object)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loopOnce(Looper.java:201)
at android.os.Looper.loop(Looper.java:288)
at com.android.server.SystemServer.run(SystemServer.java:909)
at com.android.server.SystemServer.main(SystemServer.java:616)
at java.lang.reflect.Method.invoke(Native method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:987)

"Binder:1499_1F" prio=5 tid=164 Blocked | group="main" sCount=1 ucsCount=0 flags=1 obj=0x133c9ae0 self=0xb400007361cf6a90 | sysTid=32704 nice=-2 cgrp=default sched=0/0 handle=0x713ea3fcb0 | state=S schedstat=( 18927190680 14770598272 89474 ) utm=1298 stm=593 core=6 HZ=100 | stack=0x713e948000-0x713e94a000 stackSize=991KB | held mutexes=
at com.android.server.power.PowerManagerService.updateUidProcStateInternal(PowerManagerService.java:3751)
- waiting to lock <0x0c0384ee> (a java.lang.Object) held by thread 36
at com.android.server.power.PowerManagerService$LocalService.updateUidProcState(PowerManagerService.java:6118)
at com.android.server.am.ActivityManagerService.enqueueUidChangeLocked(ActivityManagerService.java:14555)
at com.android.server.am.OomAdjuster.updateUidsLSP(OomAdjuster.java:1450)
at com.android.server.am.OomAdjuster.updateOomAdjInnerLSP(OomAdjuster.java:1050)
at com.android.server.am.OomAdjuster.performUpdateOomAdjLSP(OomAdjuster.java:736)
at com.android.server.am.OomAdjuster.updateOomAdjLSP(OomAdjuster.java:659)
at com.android.server.am.OomAdjuster.updateOomAdjLocked(OomAdjuster.java:641)
- locked <0x049322b3> (a com.android.server.am.ActivityManagerProcLock)
at com.android.server.am.ActivityManagerService.updateOomAdjLocked(ActivityManagerService.java:14704)
at com.android.server.am.ActiveServices.realStartServiceLocked(ActiveServices.java:4061)
at com.android.server.am.ActiveServices.bringUpServiceLocked(ActiveServices.java:3946)
at com.android.server.am.ActiveServices.bindServiceLocked(ActiveServices.java:2878)
at com.android.server.am.ActivityManagerService.bindIsolatedService(ActivityManagerService.java:12134)
- locked <0x0ab8b4c8> (a com.android.server.am.ActivityManagerService)
at android.app.IActivityManager$Stub.onTransact(IActivityManager.java:2606)
at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:2528)
at android.os.Binder.execTransactInternal(Binder.java:1179)
at android.os.Binder.execTransact(Binder.java:1143)

"PowerManagerService" prio=5 tid=36 Native | group="main" sCount=1 ucsCount=0 flags=1 obj=0x133c17e0 self=0xb400007361bf3a80 | sysTid=1636 nice=-10 cgrp=default sched=0/0 handle=0x714528fcb0 | state=S schedstat=( 5155086887 9797201141 76153 ) utm=283 stm=231 core=1 HZ=100 | stack=0x714518c000-0x714518e000 stackSize=1039KB | held mutexes=
native: #00 pc 00000000000a2808 /apex/com.android.runtime/lib64/bionic/libc.so (recvfrom+8)
native: #01 pc 00000000000640b0 /apex/com.android.runtime/lib64/bionic/libc.so (__system_property_set+760)
native: #02 pc 00000000000b0130 /system/lib64/libandroid_runtime.so (android::(anonymous namespace)::SystemProperties_set(_JNIEnv*, _jobject*, _jstring*, _jstring*)+308)
at android.os.SystemProperties.(Native method)
at android.os.SystemProperties.set(SystemProperties.java:233)
at android.app.PropertyInvalidatedCache.invalidateCacheLocked(PropertyInvalidatedCache.java:676)
at android.app.PropertyInvalidatedCache.invalidateCache(PropertyInvalidatedCache.java:646)
- locked <0x08b9a822> (a java.lang.Object)
at android.os.PowerManager.invalidateIsInteractiveCaches(PowerManager.java:2926)
at com.android.server.power.PowerManagerService$Injector.invalidateIsInteractiveCaches(PowerManagerService.java:918)
at com.android.server.power.PowerManagerService.setGlobalWakefulnessLocked(PowerManagerService.java:2029)
at com.android.server.power.PowerManagerService.setWakefulnessLocked(PowerManagerService.java:1970)
at com.android.server.power.PowerManagerService.dreamDisplayGroupNoUpdateLocked(PowerManagerService.java:1930)
at com.android.server.power.PowerManagerService.updateWakefulnessLocked(PowerManagerService.java:2858)
at com.android.server.power.PowerManagerService.updatePowerStateLocked(PowerManagerService.java:2150)
at com.android.server.power.PowerManagerService.handleUserActivityTimeout(PowerManagerService.java:2764)
- locked <0x0c0384ee> (a java.lang.Object)
at com.android.server.power.PowerManagerService.access$3600(PowerManagerService.java:139)
at com.android.server.power.PowerManagerService$PowerManagerHandlerCallback.handleMessage(PowerManagerService.java:4811)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loopOnce(Looper.java:201)
at android.os.Looper.loop(Looper.java:288)
at android.os.HandlerThread.run(HandlerThread.java:67)
at com.android.server.ServiceThread.run(ServiceThread.java:44)
----------------
tid=1 被 tid=164 block,tid=164 又被 tid=36 block
但是tid=36并没有等其他锁,应该就是tid=36这个线程,一直在处理它的业务逻辑,持有的锁一直没释放,block 164和1了

■ 下一步计划

导致该问题的原因是内存占用过高,com.android.documentsui被杀之前的日志暂未找到冻屏的log;下一步:将内存刷至剩余117M左右,再次验证。

1.之前system组的同学此结果还未验证(已飞书联系,待反馈验证结果)
2.从日志检查下36这个线程为什么这么耗时,一直没有完成,看堆栈是在设置系统属性,这个应该要不了多久才对
3.对于PropertyInvalidatedCache.java中invalidateCacheLocked方法,在androidT和S中实现有变化,检查这一变化的影响

#20 Updated by CD FW 曹覃刚 about 2 years ago

  • Assignee changed from CD FW 曹覃刚 to CD FW 郑雷

-

#21 Updated by CD FW 曹覃刚 about 2 years ago

  • Assignee changed from CD FW 郑雷 to CD FW 曹覃刚

#22 Updated by CD FW 曹覃刚 about 2 years ago

  • Assignee changed from CD FW 曹覃刚 to CD FW王武军

#23 Updated by CD FW王武军 about 2 years ago

1、目前进展
1)按照之前的一些分析结论,从发生死锁的方法PropertyInvalidatedCache.invalidateCacheLocked出发,找到12和13的区别,差别patch的信息如下:

This change corrects a latent defect related by the new bypass()
method in PropertyInvalidatedCache. The defect is not current issue
because there are no clients using the bypass() method yet.

从patch的修改逻辑,没太看多太多逻辑性的东西,不过后续会将该patch先调整到目前的版本中,作为一个处理点。
2)找到了19:46-19:54的日志目前正在分析,这个时间段刚好是system_server 发生anr之前的时间,看是否能从这个时间段中,anr的一些其他信息。

2、下一步
1)将13的patch搬过来打入,让测试测试
2)结合之前的分析信息,进一步强化分析19:46-19:54这个时间的日志

#24 Updated by CD FW王武军 about 2 years ago

1、5月26日进展
1)将PowerManager.invalidateIsInteractiveCaches,在android13的更新patch已经做好,并编译了Jenkins版本
提交如下:https://dev.thundercomm.com/gerrit/c/general/platform/frameworks/base/+/202615
2)继续强化分析19:46-19:54之间的日志
分析的情况:
在这个时间段内容出现大量的如下日志信息:

05-17Freezer: check freeze binder ioctl
Some old kernels don't have the necessary binder ioctls for freezer
(BINDER_FREEZE & BINDER_GET_FROZEN_INFO). In such a case, disable
freezer with a warning log. 19:47:45.212 1000 1499 1738 D ActivityManager: freezing 24540 com.android.permissioncontroller
05-17 19:47:45.212 1000 1499 1738 E ActivityManager: Unable to freeze binder for 24540 com.android.permissioncontroller
01-01 12:44:54.141 root 0 0 I binder : 1499:1738 ioctl 400c620e 7138afd5d8 returned -22
01-01 12:44:54.144 root 0 0 I binder : 1499:1738 ioctl c00c620f 7138afd5b8 returned -22
05-17 19:47:45.214 1000 1499 1738 D ActivityManager: froze 24540 com.android.permissioncontroller
05-17 19:47:45.215 1000 1499 1738 E ActivityManager: Unable to freeze binder for 24540 com.android.permissioncontroller
05-17 19:47:45.224 1000 1499 1738 I ActivityManager: Killing 24540:com.android.permissioncontroller/u0a90 (adj 975): Unable to freeze binder interface
05-17 19:47:51.829 1000 1499 1738 D ActivityManager: freezing 5416 com.qualcomm.qti.qccauthmgr
05-17 19:47:51.831 1000 1499 1738 E ActivityManager: Unable to freeze binder for 5416 com.qualcomm.qti.qccauthmgr
01-01 12:45:00.778 root 0 0 I binder : 1499:1738 ioctl 400c620e 7138afd5d8 returned -22
05-17 19:47:51.833 1000 1499 1738 D ActivityManager: froze 5416 com.qualcomm.qti.qccauthmgr
01-01 12:45:00.782 root 0 0 I binder : 1499:1738 ioctl c00c620f 7138afd5b8 returned -22
05-17 19:47:51.833 1000 1499 1738 E ActivityManager: Unable to freeze binder for 5416 com.qualcomm.qti.qccauthmgr
05-17 19:47:51.837 1000 1499 1738 I ActivityManager: Killing 5416:com.qualcomm.qti.qccauthmgr/u0a83 (adj 975): Unable to freeze binder interface
01-01 12:45:09.020 root 0 0 I binder : 1499:1738 ioctl 400c620e 7138afd5d8 returned -22

可以看出是系统在freeze相关的应用,并做了kill进程的操作,从freeze这个操作进行check,发现缺少了freeze的相关patch,
在内核比较低的版本上(4.19.157+),是不支持freeze的,不支持就会杀除进程。
谷歌针对freeze的patch信息如下:

Freezer: check freeze binder ioctl
Some old kernels don't have the necessary binder ioctls for freezer
(BINDER_FREEZE & BINDER_GET_FROZEN_INFO). In such a case, disable
freezer with a warning log.

后续会把这个patch添加进来。避免做freeze时将进程杀掉。

针对PowerManager.invalidateIsInteractiveCaches锁住的问题,就是SystemProperties.set方法耗时太久造成锁住的情况,
大概率是受到freeze相关的操作应用,因为从就是SystemProperties的实现原理来看,property service收到请求之后再set进property workspace(共享内存方式),
但是property service(init进程)是单线程工作,所以有时候它可能响应比较慢(比如它正在关闭一个子进程或者正在做其他事情),前面因为freeze不停的杀除进程正好满足这个条件。
2、下一步
1)将freeze的patch打入
https://dev.thundercomm.com/gerrit/c/general/platform/frameworks/base/+/202849
2)在运行monkey测试时将游戏性能优化的策略停掉
https://dev.thundercomm.com/gerrit/c/general/platform/frameworks/base/+/202848
https://dev.thundercomm.com/gerrit/c/general/platform/vendor/thundercomm/apps/GameMode/+/202856
3)将3个方面的修改做一个Jenkins编译,后续在这个版本上进行验证

#25 Updated by CD FW王武军 about 2 years ago

1、5月27日进展
将3个方面的修改编译了Jenkins
http://10.0.76.24:8080/job/VerifyBuild_for_IOT_6490/4021

在Jenkins版本验证了3个修改策略:
1)
https://dev.thundercomm.com/gerrit/c/general/platform/frameworks/base/+/202615
在自动进入屏保和退出屏保时,PowerManager.invalidateIsInteractiveCaches的逻辑正常,相关日志:

05-24 17:09:24.451  1063  1223 I DreamManagerService: Entering dreamland.
05-24 17:09:24.452 1063 1223 I PowerManagerService: Dreaming...
05-24 17:09:29.667 1063 2514 I DreamManagerService: Gently waking up from dream.
05-24 17:09:29.671 1063 1177 I DreamManagerService: Performing gentle wake from dream.

2)
https://dev.thundercomm.com/gerrit/c/general/platform/frameworks/base/+/202848
https://dev.thundercomm.com/gerrit/c/general/platform/vendor/thundercomm/apps/GameMode/+/202856
针对monkey测试时,调整游戏模式时性能优化的策略
monkey测试运行,有如下日志:

E GameMode_ActivityMonitoringService: [Perf] is not support Performance or in monkey test.

未运行monkey时,启动应用的日志:

I thunderperf: Maybe need boostperf for current app!
I ThunderBoostPerfService: Disable downscaling

3)
https://dev.thundercomm.com/gerrit/c/general/platform/frameworks/base/+/202849
未引入关于freeze的patch时,在启动的应用或者服务挂载到后台后,持续一段时间后,就会触发freeze,并杀除进程,日志信息如下:

1067  1195 W ActivityManager: Stopping service due to app idle: u0a52 -11m25s719ms com.kuaishou.nebula/com.kwai.chat.kwailink.service.NewKwa
1067 1705 D ActivityManager: freezing 9359 com.qualcomm.qti.qms.service.trustzoneaccess
1067 1705 E ActivityManager: Unable to freeze binder for 9359 com.qualcomm.qti.qms.service.trustzoneaccess
1067 1705 D ActivityManager: froze 9359 com.qualcomm.qti.qms.service.trustzoneaccess
1067 1705 I am_freeze: [9359,com.qualcomm.qti.qms.service.trustzoneaccess]
1067 1705 E ActivityManager: Unable to freeze binder for 9359 com.qualcomm.qti.qms.service.trustzoneaccess
1067 1705 I ActivityManager: Killing 9359:com.qualcomm.qti.qms.service.trustzoneaccess/u0a58 (adj 945): Unable to freeze binder interface

引入freeze的patch之后,打开同样的应用和服务,等待一段时间后,未发现类似的freeze日志输出,没有触发进程杀除的日志。

综述:3个修改策略在本地验证时运行正常,日志方面没有出现票中所出现的异常日志。

2、下一步
1)确认修改是否需要合入。

#26 Updated by IoT scm about 2 years ago

Gerrit Merge Information
ID Project Branch Uploader
202856 general/platform/vendor/thundercomm/apps/GameMode Pre_figure_turbox-c2130c-la1.1-qssi12-dev
AF:GameMode: prohibit game performance
Check monkey test to prohibit game performance.
TC-RID: 1201-0204803
IssueID: TS-R-BUG-118072
Change-Id: Ic6f4d493ba8a89e56e0af45ab89b6f03328beb17

#27 Updated by IoT scm about 2 years ago

Gerrit Merge Information
ID Project Branch Uploader
202849 general/platform/frameworks/base Pre_figure_turbox-c2130c-la1.1-qssi12-dev
FW:SystemOptimization: check freeze binder ioctl
Freezer: check freeze binder ioctl
Some old kernels don't have the necessary binder ioctls for freezer
(BINDER_FREEZE & BINDER_GET_FROZEN_INFO). In such a case, disable
freezer with a warning log.
TC-RID: 1201-0205101
IssueID: TS-R-BUG-118072
Change-Id: I553201e04c7b92e7492b83845da8f35f3ea1eda4

#28 Updated by IoT scm about 2 years ago

Gerrit Merge Information
ID Project Branch Uploader
202615 general/platform/frameworks/base Pre_figure_turbox-c2130c-la1.1-qssi12-dev
FW:SystemOptimization: PropertyInvalidatedCache
This change corrects a latent defect related by the new bypass()
method in PropertyInvalidatedCache. The defect is not current issue
because there are no clients using the bypass() method yet.
TC-RID: 1201-0205101
IssueID: TS-R-BUG-118072
Change-Id: Iaecf55b8afd4db7e0fe9ca22b9577ebc220c0526

#29 Updated by IoT scm about 2 years ago

Gerrit Merge Information
ID Project Branch Uploader
202848 general/platform/frameworks/base Pre_figure_turbox-c2130c-la1.1-qssi12-dev
AF:GameMode: prohibit game performance
Check monkey test to prohibit game performance.
TC-RID: 1201-0204803
IssueID: TS-R-BUG-118072
Change-Id: I11bc923245dfaf7ced6644179523ee12d3da2237

#30 Updated by CD FW王武军 about 2 years ago

  • Assignee changed from CD FW王武军 to 物联网测试组_CDTS 唐霞
  • Resolution changed from -- to FIXED
  • Fixed Version changed from 2023-05-26 to 2023-05-28
  • Root cause set to 问题原因: freeze机制导致,进程在一段时间内被杀除,占用系统性能,导致SystemProperties.set执行逻辑时被延时,卡主了其他系统进程。 问题处理: 引入google的patch处理取消freeze机制,并引入了android13的新patch,同时优化了针对游戏模式的性能优化策略。

#31 Updated by CDTS-TEST 周婷 about 2 years ago

  • Assignee changed from 物联网测试组_CDTS 唐霞 to CD FW王武军

请正确流转状态

#32 Updated by CD FW王武军 about 2 years ago

  • Status changed from ASSIGNED to RESOLVED
  • Assignee changed from CD FW王武军 to 物联网测试组_CDTS 唐霞

【】当前状态
针对票中已经发现的问题做出了修改,本地验证修改是生效的。
【】下一步
请测试在db版本上针对票中的情况进行测试和验证。

#33 Updated by 物联网测试组_CDTS 唐霞 about 2 years ago

FlatBuild_HH_MCE_FSE.M.R.user.01.00.0107.C104版本验证20次未复现

#34 Updated by SZTS_TEST 邹涛 about 2 years ago

在01.00.0108.C104版本验证20次未复现

#35 Updated by SZTS_TEST 邹涛 about 2 years ago

FlatBuild_HH_MCE_FSE.M.R.user.01.00.0110.C104版本验证20次未复现

#36 Updated by 物联网测试组_CDTS 唐霞 about 2 years ago

user.01.00.0110.C104(6/13)版本验证20次未复现

#37 Updated by SZTS_TEST 邹涛 about 2 years ago

在FlatBuild_HH_MCE_FSE.M.R.user.01.00.0110.C105版本(6.15)复测20次未复现

#38 Updated by SZTS_TEST 邹涛 about 2 years ago

FlatBuild_HH_MCE_FSE.M.D.user.01.00.C105.202306180036复测20次,未复现

#39 Updated by SZTS_TEST 邹涛 about 2 years ago

FlatBuild_HH_MCE_FSE.M.D.user.01.00.C105.202306180036 复测20次未复现

#40 Updated by SZTS_TEST 邹涛 about 2 years ago

FlatBuild_HH_MCE_FSE.M.D.user.01.00.C105.202306200207 版本复测20次未复现

#41 Updated by SZTS_TEST 邹涛 about 2 years ago

FlatBuild_HH_MCE_FSE.M.R.user.01.00.0112.C105验证20次未复现

#42 Updated by SZTS_TEST 邹涛 about 2 years ago

FlatBuild_HH_MCE_FSE.M.D.user.01.00.C105.202306250045 版本验证20次未复现

#43 Updated by 物联网测试组_CDTS 唐霞 about 2 years ago

  • Status changed from RESOLVED to VERIFIED

113release版本验证20未复现
连续验证多个版本均未复现,关闭问题单

#44 Updated by 物联网测试组_CDTS 唐霞 about 2 years ago

  • Status changed from VERIFIED to CLOSED

Also available in: Atom PDF