ramdump-parser使用说明

  1. 文档主要介绍如何利用ramdump-parser工具解析AP侧linux dump。
  2. ramdump-parser介绍

       2.1 ramdump-parser组成:

        ramdump-parser主要分为两部分功能,一部分是一套python解析脚本,如图2.1,另一部分是交叉编译工具,如图2.2。

图2.1

图2.2

2.2 ramdump-parser使用和分析

准备工作:

1)当系统挂掉后,需要使用高通qpst工具抓取ramdump。(qpst会将dump保存到相应路径并命名为类似Port_COM*的文件夹);

2)获取相应软件版本编译生成的vmlinux文件;

3)ramdump-parser工具路径。

命令解析方法过程如下:

suwei@ubuntu:~/ramdump/Port_COM24$ ls

CODERAM.BIN DDRCS0.BIN dump_info.txt load.cmm OCIMEM.BIN out_bak RST_STAT.BIN

DATARAM.BIN debug_vmlinux ipc_logging MSGRAM.BIN out PMIC_PON.BIN SN_C18C5F70

解析过程:

suwei@ubuntu:~/ramdump/Port_COM24$ ../ramdump-parser.sh

[1/32] --clock-dump ... 1.758616s

[2/32] --cpr3-info ... NOTE: 'kryo_regulator_list' list not found to extract kryo_addr information

0.068746s

[3/32] --cpr-info ... 2.529021s

[4/32] --cpu-state ... 0.035363s

[5/32] --ddr-compare ... 5.196215s

[6/32] --check-for-watchdog ... 0.037000s

[7/32] --parse-debug-image ... 27.564818s

[8/32] --dmesg ... 0.831937s

[9/32] --print-iommu-pg-tables ... 0.160261s

[10/32] --print-ipc-logging ... FAILED! 39.974577s

[11/32] --print-irqs ... 1.557243s

[12/32] --print-kconfig ... 0.348651s

[13/32] --lpm ... FAILED! 0.665646s

[14/32] --print-mdpinfo ... 0.037154s

[15/32] --print-memstat ... 0.896034s

[16/32] --print-memory-info ... 0.956112s

[17/32] --dump-page-tables ... 0.000161s

[18/32] --print-pagealloccorruption ... 0.000966s

[19/32] --print-pagetracking ... 0.000898s

[20/32] --print-pagetypeinfo ... 1.112308s

[21/32] --check-rodata ... 2.731867s

[22/32] --print-rtb ... 0.156771s

[23/32] --print-runqueues ... 2.499831s

[24/32] --spm ... 0.417232s

[25/32] --print-tasks ... 0.938417s [16/32] --print-memory-info ... 0.956112s

[17/32] --dump-page-tables ... 0.000161s

[18/32] --print-pagealloccorruption ... 0.000966s

[19/32] --print-pagetracking ... 0.000898s

[20/32] --print-pagetypeinfo ... 1.112308s

[21/32] --check-rodata ... 2.731867s

[22/32] --print-rtb ... 0.156771s

[23/32] --print-runqueues ... 2.499831s

[24/32] --spm ... 0.417232s

[25/32] --print-tasks ... 0.938417s

[26/32] --print-tasks-timestamps ... FAILED! 0.209937s

[27/32] --check-for-panic ... 0.023197s

[28/32] --thermal-info ... 0.595741s

[29/32] --timer-list ... 1.671173s

[30/32] --print-vmalloc ... 0.577060s

[31/32] --print-vmstats ... 1.625739s

[32/32] --print-workqueues ... 0.814753s

解析完成后结果如下图2.3所示:

图2.3

以mdm9607平台为例,打开解析完成后目录下的out/dmesg_TZ.txt文件(如图2.4),可以看到死机的调用堆栈,同时从图2.3来看,可以获取当前的进程task,寄存器,内核配置,dmesg,内存使用情况,timer,clock等系统信息。

图2.4

(注:对于一些其他平台如高通的SA515M或者手机MSM系列,如遇到解析有问题,有时需要借助—force-hardware加一些平台参数,参数配置类似boards.py中描述来进行解析)

附:

ramdump-parser.sh内容见另外一个链接。

(67条消息) ramdump-parser解析脚本-Linux文档类资源-CSDN文库

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

a2591748032-随心所记

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

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

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

打赏作者

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

抵扣说明:

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

余额充值