参考:https://crash-utility.github.io/help_pages/search.html
用法:
- 设置搜索的起始地址,可以配合下面的
-k -u -p
等使用search -s <起始地址>
- 搜索内核虚拟地址空间,这个也是默认的搜索选项
search -k
- 搜索内核虚拟地址空间,但是会排除vmalloc区、内核模块区以及mem_map区
search -K
- 如果想进一步排除unity-mapped、内核代码和数据段,可以使用
search -V
- 在当前进程的用户虚拟地址空间搜索
search -u
- 在物理内存地址中搜索
search -p
- 在每个进程的内核栈里面搜索
search -t
- 比如可以用来搜索锁被哪些进程持有,那么可以在进程的内核栈里搜索锁的地址
- 在当前正在运行的进程的内核栈里面搜索
search -T
- 设置搜索的结束地址
search -e <结束地址>
- 设置搜索的空间长度
search -l <长度>
- 设置屏蔽位,即搜索时不比较被屏蔽的位,比如设置为0xFFFF0000,表示只比较低16位
search -m <屏蔽掩码>
比如:search -p babe0000 -m ffff -w
- 搜索字符串,如果字符串中间有空格,需要用
""
将整个字符串括起来search -c <字符串>
比如:search -c "can't allocate memory" "Failure to"
- 按32位搜索,这个功能只在64位系统上有效,这样可以分别比较高32和低32位
search -w
- 按16位搜索
search -h
- 当匹配到的时候,在显示时输出匹配到的地址前后一部分内存数据,这里的
数量
的的单位是被搜索的内容
的大小search -x <数量>
- 搜索表达式的值
search (__down_interruptible+191)
- 搜索内核符号
search 内核符号