debug学习

参考

内核

工具

kdump&crash

drgn

decode_stacktrace.sh

faddr2line

pengdl@ubuntu:~/x86/linux-5.19$ ./scripts/faddr2line ./vmlinux proc_reg_open+255 blk_mq_dispatch_rq_list+599
proc_reg_open+255/0x1f0:
proc_reg_open at fs/proc/inode.c:524

blk_mq_dispatch_rq_list+599/0x850:
blk_mq_dispatch_rq_list at block/blk-mq.c:1897


pengdl@ubuntu:~/x86/linux-5.19$ ./scripts/faddr2line ./fs/proc/inode.o  proc_reg_open+255
proc_reg_open+255/0x1f0:
proc_reg_open at /home/pengdl/work/Qemu/x86/linux-5.19/fs/proc/inode.c:524

stack canary

反汇编

硬件断点

gdb

debugfs

  • 命令
modprobe ice dyndbg=+p
echo "module ice +p" > /sys/kernel/debug/dynamic_debug/control
sudo insmod ice.ko dyndbg="+p" fwlog_events=0x0FFFFFFF fwlog_level=2

dmesg

  • 命令
# 等待输出新的内容日志: -w
dmesg -w file.log  # 将内核日志重定向到文件中,并且等待输出新的日志

内存类

kasan

OOB

UAF

kfence

OOB

UAF

KCSAN

KMSAN

UBSAN

内存泄漏

slub_debug

死锁

softlockup

hung task

hard lockup

应用

ASAN

Heaptrack

服务器故障排查

posted @ 2022-06-12 09:24  摩斯电码  阅读(372)  评论(0编辑  收藏  举报