本次问题在kernel Log中没有找到任何有用的线索
1.在ZZ_INTERNAL文件中找到:
Kernel (KE),0,0,99,/data/core/,0,,KE at __schedule_bug+0x98/0xd8,Wed Dec 6 17:55:16 CST 2017,1
可以确定可能内核代码有关,即驱动代码
2.使用GAT打开mtklog\aee_exp_backup\db.fatal.00.KE\db.fatal.00.KE.dbg
需要LogViewer才能打开该文件,打开Logviewer的方法(两种)如下:
*.打开GAT工具 -> Window -> Open LogViewer
*.运行脚本:GAT工具目录\tools\MediatekLogView.bat
运行GAT :jvm.dll cann't find 的问题,可能是版本不兼容的问题,就可能GAT是32位的,而jdk是64位的。必须要同时是32位或64位
打开db.fatal.00.KE.dbg,只有几个文件:
ZZ_INTERNAL
SYS_KERNEL_LOG
SYS_VERSION_INFO
__exp_main.txt
在__exp_main.txt得到以下信息:需要有经验的人才能判断出问题。
Exception Class: Kernel (KE)
PC is at [<ffffffc0000baefc>] __schedule_bug+0x98/0xd8
LR is at [<ffffffc0000baef4>] __schedule_bug+0x90/0xd8
Current Executing Process:
[d.process.media, 1068][main, 214]
Backtrace:
[<ffffffc00093a728>] __do_kernel_fault.part.5+0x70/0x84
[<ffffffc000091fd4>] do_page_fault+0x250/0x254
[<ffffffc000092094>] do_translation_fault+0xbc/0xf0
[<ffffffc000081290>] do_mem_abort+0x38/0x9c
[<ffffffc000083c50>] el1_da+0x14/0x80
[<ffffffc000941054>] __schedule+0x63c/0x70c
[<ffffffc000941148>] schedule+0x24/0x74
[<ffffffc0009411a8>] schedule_preempt_disabled+0x10/0x24
[<ffffffc0000d9474>] mutex_optimistic_spin+0x184/0x1c8
[<ffffffc000942910>] __mutex_lock_slowpath+0x38/0x164
[<ffffffc000942a80>] mutex_lock+0x44/0x64
[<ffffffc000321bd4>] pinctrl_get_device_gpio_range+0x4c/0xf8
[<ffffffc000321c9c>] pinctrl_gpio_direction+0x1c/0x8c
[<ffffffc000323120>] pinctrl_gpio_direction_input+0xc/0x18
[<ffffffc000327720>] mtk_gpio_direction_input+0x10/0x1c
[<ffffffc00032b780>] gpiod_direction_input+0x44/0x18c
[<ffffffc0005c279c>] i2c_transfer_byte.isra.2+0xa4/0x118
[<ffffffc0005c2c28>] i2c_write_buf.constprop.9+0x34/0x78
[<ffffffc0005c2ddc>] led_time_hrtimer_func+0x60/0x108
[<ffffffc0000f35a4>] __run_hrtimer+0x78/0x260
[<ffffffc0000f4318>] hrtimer_interrupt+0x108/0x2a0
[<ffffffc0006e1488>] arch_timer_handler_phys+0x28/0x38
[<ffffffc0000e72b8>] handle_percpu_devid_irq+0xa4/0x1a8
[<ffffffc0000e354c>] generic_handle_irq+0x30/0x4c
[<ffffffc0000e35ec>] __handle_domain_irq+0x84/0xf0
[<ffffffc000081418>] gic_handle_irq+0x34/0x80
在SYS_KERNEL_LOG没有找到有用的信息
在SYS_VERSION_INFO没有找到有用的信息
在mtklog\mobilelog\APLog_2017_1206_175544\last_kmsg中找到比较直接的提示
[ 2133.862246] -(2)[1068:d.process.media]BUG: scheduling while atomic: d.process.media/1068/0x00010001================================================================================================
[ 2133.863368] Preemption disabled at:[<ffffffc0000e35c4>] __handle_domain_irq+0x5c/0xf0
[ 2133.864344] -(2)[1068:d.process.media]
[ 2133.864815] -(2)[1068:d.process.media]CPU: 2 PID: 1068 Comm: d.process.media Tainted: G W 3.18.22+ #1
[ 2133.866091] -(2)[1068:d.process.media]Hardware name: MT8163 (DT)
[ 2133.866839] -(2)[1068:d.process.media]Call trace:
[ 2133.867431] -(2)[1068:d.process.media][<ffffffc000087c28>] dump_backtrace+0x0/0x124
[ 2133.868382] -(2)[1068:d.process.media][<ffffffc000087d5c>] show_stack+0x10/0x1c
[ 2133.869294] -(2)[1068:d.process.media][<ffffffc00093ba40>] dump_stack+0x74/0xb8
[ 2133.870205] -(2)[1068:d.process.media][<ffffffc0000baec0>] __schedule_bug+0x5c/0xd8
[ 2133.871159] -(2)[1068:d.p