Skip to main content
Crash 实用工具是一个开源工具,用于通过基于 gdb 的命令行界面在 RAM 转储上调试内核。

前提条件

  • kaslr_offsetkimage_voffset 值 默认情况下,Qualcomm Linux 构建启用了内核地址空间布局随机化(KASLR)功能。要使 crash 实用工具在启用 KASLR 的内核上工作,您需要 kaslr_offsetkimage_voffset 参数的值,可以从 dmesg_TZ.txt RAMparser 输出文件中提取这些值。 以下摘自示例 RAMparser 输出文件 dmesg_TZ.txt,提供了 kaslr_offsetkimage_voffset 的值。 The kaslr_offset extracted is: 0x340c3d320000 … The kimage_voffset extracted is: ffffb40bbf600000
  • 内核二进制文件(DDRCS*.BIN)的基地址 当您使用 PCAT 捕获 RAM 转储时,它还会捕获 dump_info.txtload.cmm 文件。这些文件包含内核二进制文件(DDRCS*.BIN)的基地址。

在 Linux 主机上下载并构建 crash 实用工具

  • 要下载并构建 crash 实用工具,请运行以下命令:
有关更多信息,请参阅 crash/README at master · crash-utility/crash· GitHub

运行 crash 实用工具

以下是在 Ubuntu 主机上运行 crash 实用工具的示例命令:
  • <PATH> 替换为 vmlinux RAM 转储路径。
  • dmesg_TZ.txt RAMparser 输出文件中提取 kimage_voffsetkaslr
  • 从使用 PCAT 收集的 RAM 转储中提供的 dump_info.txt 文件中提取 DDR 偏移量,例如 0x80000000
示例输出:
示例命令:
示例输出:
示例命令:
示例输出:
示例命令:
示例输出:
有关 crash 实用工具的更多信息,请参阅以下内容: