1、SysDump简介
SysDump即Dump system
memory,是一种转存储机制,是将发生异常时的内存信息、寄存器信息等有效信息转存为文件,以便于借助分析工具分析问题现场。
在系统发生诸如
kernel crash等异常时,在Kernel中完成flush cache等处理后,重启进入
Uboot中完成所有数据的保存,保存过程会有相应屏幕提示,完成后根据屏幕提示重启手 机,导出异常数据文件进行分析。 SysDump分为FullDump和MiniDump两个子功能,两个子功能是互不影响的。
• FullDump保存完整DDR信息,可以支持两种存储路径Dump2SD和Dump2PC。
• MiniDump保存少量信息到单独的SysDumpdb分区,然后再由native sevice 程序将分区
保存的
raw数据整理解析后放置到/sdcard/MiniDump路径下。 在资源允许的条件下,优先选择保存分析FullDump日志,因为其保存了完整的现场信息快照,更有利于深入分析问题。
设计简介:
• 系统异常和组合键主动触发系统异常都会走到Kernel的处理流程,但长按7S(秒)的操作不会进入Kernel处理流程。
• MiniDump在Kernel阶段完成初始化和异常处理时的数据保存。
• Uboot中完成数据的存储操作,包括FullDump 和MiniDump。
2、SysDump配置
触发方式配置
硬件配置不同,SysDump触发方式也有所差异,具体如下。
功能配置
• FullDump功能在UserDebug版本上默认使能,在User版本上默认关闭。
FullDump功能使能/禁止可以在“
工程模式”中设置,具体如下:
(*#*#83781#*#*)-->Debug&LOG-->YLog-->
settings-->SysDump
enable。
- 使能/禁止FullDump操作后即可正常使用,不需重启设备。
- 重新开机后,FullDump的状态会保持上一次的使能/禁止状态。
• MiniDump功能在User 和 UserDebug版本默认都是使能。
3、FullDump文件解析
FullDump文件解析
• Dump2SD方式存储的FullDump一般在
sd卡中,有SysDump文件夹,保存3份历史日志,其中文件夹1中为最新的。
• Dump2PC的文件可以通过Logel工具查看:File->Open Log Location。 SysDump文件主要有:
• dump_report.txt: SysDump信息文件,记录了SysDump文件的个数,重启原因等。
• ylog_buf文件: 记录ylog buffer中信息。
• SysDump.core*:log文件。
FullDump文件解析命令如下: crash_
arm -m phys_base=0x80000000 vm
linux vmcore crash_arm64 -m phys_offset=0x80000000 vmlinux vmcore
其中:
• crash 工具获取方法如下:
vendor/sprd/tools/crash //获取工具
vendor/sprd/tools/crash/Usage //获取工具使用说明
- crash_arm: 用于32bit ARM 平台
- crash_arm64:用于64bit ARM 平台
• vmlinux为编译时生成的最原始的
内核文件,用于kernel debug,获取路径为:
out/target/
product/xxxx/obj/Kernel/vmlinux
• vmcore为通过sysdump收集到的系统的core dump信息:由SysDump文件SysDump.core*合成,合成命令如下:
cat sysdump.core.* > vmcore
4、Dump2PC功能介绍
Dump2PC功能简介
Dump2PC功能是为了适应无SD卡场景时,将SysDump产生的日志借助Logel工具导出到PC 上。该功能默认:
• 有SD卡时将log存储到SD卡。
• 无SD卡或者Dump2SD失败时,自动切换到Dump2PC功能,提示连接PC进行Dump2PC操作。 Dump2PC工具和SPRD U2S Diag
端口驱动建议使用最新版本。
1. 支持Dump2PC功能的设备发生SysDump,在Dump2SD失败后会自动尝试Dump2PC,屏幕会给出打印信息,等待连接PC。此时并未开始dump,只有连接成功后设备才会和PC开始握手。 使用USB线连接设备和PC,此时如果设备可以正常检测到USB线插入,则会在屏幕上有"usb cable is inserted..."的打印提示。
此处会一直等待直到电量耗尽。测试前如果有连接充电器,此状态可以充电,保证电量不会耗尽。
注:此处必须有USB插入动作才会被检测到。
2. 打开PC端工具Logel(版本必须高于R8.18.1702_P2),Logel工具界面如图1所示。
其中,红框内:
• 左侧为"capture"按钮,初始状态为红色,抓取状态为绿色。
• 右侧按钮为“capture setting”,默认无需做任何设置。
更多详细内容请下载附件查看