Mtk平台出现NE的分析简记

(1)出现原因 / Log分析

测试在进行压力测试的过程中,快速的对Mtk Camera进行多次拍照,Camera App偶现无法连接到相机的问题。

从Main Log中可以看到最后一次拍照时间是03-14 14:27:56.130678:

main_log_2__2022_0314_142837:23726: 03-14 14:27:54.167785  4016  5385 I CamAp_PhotoDevice2Controller: [takePicture] mSession= com.mediatek.camera.common.device.v2.Camera2CaptureSessionProxy@6c60e09
main_log_2__2022_0314_142837:27298: 03-14 14:27:54.424088  4016  5385 I CamAp_PhotoDevice2Controller: [takePicture] mSession= com.mediatek.camera.common.device.v2.Camera2CaptureSessionProxy@6c60e09
main_log_2__2022_0314_142837:31916: 03-14 14:27:54.716107  4016  5385 I CamAp_PhotoDevice2Controller: [takePicture] mSession= com.mediatek.camera.common.device.v2.Camera2CaptureSessionProxy@6c60e09
main_log_2__2022_0314_142837:35143: 03-14 14:27:54.939082  4016  5385 I CamAp_PhotoDevice2Controller: [takePicture] mSession= com.mediatek.camera.common.device.v2.Camera2CaptureSessionProxy@6c60e09
main_log_2__2022_0314_142837:38871: 03-14 14:27:55.149465  4016  5385 I CamAp_PhotoDevice2Controller: [takePicture] mSession= com.mediatek.camera.common.device.v2.Camera2CaptureSessionProxy@6c60e09
main_log_2__2022_0314_142837:42546: 03-14 14:27:55.356804  4016  5385 I CamAp_PhotoDevice2Controller: [takePicture] mSession= com.mediatek.camera.common.device.v2.Camera2CaptureSessionProxy@6c60e09
main_log_2__2022_0314_142837:46250: 03-14 14:27:55.554694  4016  5385 I CamAp_PhotoDevice2Controller: [takePicture] mSession= com.mediatek.camera.common.device.v2.Camera2CaptureSessionProxy@6c60e09
main_log_2__2022_0314_142837:49748: 03-14 14:27:55.736368  4016  5385 I CamAp_PhotoDevice2Controller: [takePicture] mSession= com.mediatek.camera.common.device.v2.Camera2CaptureSessionProxy@6c60e09

main_log_2__2022_0314_142837:55293: 03-14 14:27:56.130678  4016  5385 I CamAp_PhotoDevice2Controller: [takePicture] mSession= com.mediatek.camera.common.device.v2.Camera2CaptureSessionProxy@6c60e09

而发生NE的时间点为03-14 14:27:56.582261:

03-14 14:27:56.582261   500   500 D AEE_AED : $===AEE===AEE===AEE===$
03-14 14:27:56.582392   500   500 D AEE_AED : p 2 poll events 1 revents 1
03-14 14:27:56.583053   500   500 D AEE_AED : PPM cpu cores:8, online:8
03-14 14:27:56.583542   500   500 D AEE_AED : aed_main_fork_worker: generator 0xb400007d062096a0, worker 0x7fe61fb1d0, recv_fd 12
03-14 14:27:56.584626  8905  8905 I AEE_AED : handle_request(12)
03-14 14:27:56.585047  8905  8905 D AEE_AED : check_socket, check socket successful!
03-14 14:27:56.585940  8905  8905 I AEE_AED : pid: 948, tid: 948, >>> /vendor/bin/hw/camerahalserver <<<
03-14 14:27:56.585988  8905  8905 I AEE_AED : read_request: receive requirement from aee_core_forwar
03-14 14:27:56.586180  8905  8905 D AEE_AED : u:r:mtk_hal_camera:s0
03-14 14:27:56.586228  8905  8905 V AEE_AED : dashboard_record_update() : rec->module = /vendor/bin/hw/camerahalserver 
03-14 14:27:56.586248  8905  8905 V AEE_AED : Update record[1] 
03-14 14:27:56.586264  8905  8905 D AEE_AED :  i, Cls,	 count,	 last_time,	 module  
03-14 14:27:56.586278  8905  8905 D AEE_AED : ==================================================================== 
03-14 14:27:56.586295  8905  8905 D AEE_AED :  0,  3,	    1,	 1647239060,	 /vendor/bin/hw/mtkfusionrild 
03-14 14:27:56.586309  8905  8905 D AEE_AED :  1,  3,	    1,	 1647239276,	 /vendor/bin/hw/camerahalserver 
03-14 14:27:56.586323  8905  8905 D AEE_AED :  2, -1,	    0,	 0,	  
03-14 14:27:56.586337  8905  8905 D AEE_AED :  3, -1,	    0,	 0,	  
03-14 14:27:56.586351  8905  8905 D AEE_AED :  4, -1,	    0,	 0,	  
03-14 14:27:56.586365  8905  8905 D AEE_AED :  5, -1,	    0,	 0,	  
03-14 14:27:56.586380  8905  8905 D AEE_AED :  6, -1,	    0,	 0,	  
03-14 14:27:56.586409  8905  8905 D AEE_AED :  7, -1,	    0,	 0,	  
03-14 14:27:56.586501  8905  8905 W AEE_AED : DAL feature is off, just return
03-14 14:27:56.586604  8905  8905 E AEE_AED : aed_ne_core_session: Failed to notify aed driver dump status for /vendor/bin/hw/camerahalserver, error: Invalid argument
03-14 14:27:56.586644  8905  8905 I AEE_AED : Dumping EXP/Native (NE)
03-14 14:27:56.586697  8905  8905 I AEE_AED : aed_wait_decrypt done! file base encryption
03-14 14:27:56.586762  8905  8905 I AEE_AED : db base:/data/aee_exp

通过解析db文件和addr2line工具可以查看出错的文件和行数,如果不清楚可以查看如下文章利用addr2line命令定位backtrace的Error行数,但是这种方式对于本题并没有什么用处。

我们接着从Kernel Log来看:

//223.010310
<6>[  223.010310] -(0)[790:Dispatcher_0][thread:790] 2022-03-14 06:27:50.542626 UTC;android time 2022-03-14 14:27:50.542626

//228.642311
<6>[  228.642311]  (6)[5537:IspDeqThd_TG1][ISP][ISP_WaitIrq] interrupted by system signal,return value(-512),irq Type/User/Sts(0x0/0/0x4000)
<5>[  228.642322]  (6)[5537:IspDeqThd_TG1][ISP][ISP_ioctl] Fail, Cmd(1077439235), Pid(5523), (process, pid, tgid)=(IspDeqThd_TG1, 5537, 948)
//228.642346
<6>[  228.642346]  (6)[5536:IspEnqThd_TG1][ISP][ISP_WaitIrq] interrupted by system signal,return value(-512),irq Type/User/Sts(0x0/4/0x40)
<5>[  228.642350]  (6)[5536:IspEnqThd_TG1][ISP][ISP_ioctl] Fail, Cmd(1077439235), Pid(5523), (process, pid, tgid)=(IspEnqThd_TG1, 5536, 948)
//228.642466
<6>[  228.642466]  (3)[5568:AAOBufThread_2][ISP][ISP_WaitIrq] interrupted by system signal,return value(-512),irq Type/User/Sts(0x0/0/0x40)
<5>[  228.642476]  (3)[5568:AAOBufThread_2][ISP][ISP_ioctl] Fail, Cmd(1077439235), Pid(5523), (process, pid, tgid)=(AAOBufThread_2, 5568, 948)

从Log可以看到,223s的时间对应的是14:27:50.542626,而发生NE的时间是14:27:56.582261,也就是6s后出现的NE,而再此时间的5s多后,可以从Kernel Log看到发生了ISP_WaitIrq。

本文主要是为了串通logcat Log和kernel Log发生问题的时间线。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

雪舞飞影

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值