Loading...
Loading...
Advanced kernel debugging skill for ftrace, trace-cmd, perf, kprobes, kgdb, and crash analysis. Use when tracing kernel functions, profiling syscalls in kernel, dynamic instrumentation, or analyzing vmcore. Activates on queries about ftrace, trace-cmd, kprobe, kgdb, kernel crash dump, or dyndbg.
npx skill4agent add mohitmishra786/low-level-dev-skills kernel-debugging-advancedskills/kernel/kernel-debuggingftracetrace-cmdperfkprobeskretprobeskgdbprintkkernel-debuggingvmcore# Enable function graph tracer
echo function_graph > /sys/kernel/debug/tracing/current_tracer
echo my_driver_probe > /sys/kernel/debug/tracing/set_graph_function
echo 1 > /sys/kernel/debug/tracing/tracing_on
# reproduce issue
cat /sys/kernel/debug/tracing/trace
echo 0 > /sys/kernel/debug/tracing/tracing_onCONFIG_FUNCTION_GRAPH_TRACERtrace-cmd record -p function_graph -F my_probe
trace-cmd report
trace-cmd statperf record -a -g -- sleep 10
perf report --stdio
perf probe --add my_driver:probeskills/profilers/linux-perf#include <linux/kprobes.h>
static struct kprobe kp = {
.symbol_name = "do_sys_open",
.pre_handler = handler,
};
register_kprobe(&kp);echo 'module mydriver +p' > /sys/kernel/debug/dynamic_debug/control
echo 'file drivers/foo/*.c +p' > /sys/kernel/debug/dynamic_debug/controlpr_debug("state=%d\n", s); /* compile-time optional */
printk_ratelimited(KERN_WARNING "hw fault\n");# kernel cmdline: kgdboc=ttyS0,115200 kgdbwait
echo g > /proc/sysrq-trigger # break into debugger (when configured)# after kdump capture
crash /usr/lib/debug/vmlinux vmcore
crash> bt
crash> dev -s/kernel-debugging-advanced Trace my_driver_ioctl latency with ftrace function_graph| Symptom | Cause | Fix |
|---|---|---|
| Empty trace | Tracer not enabled | |
| ftrace overhead | Graph all functions | Filter with |
| kprobe fail | Inlined symbol | Try nearby symbol or static key |
| kgdb no connect | Wrong | Match serial/USB gadget |
| crash no symbols | Missing debuginfo | Install |
skills/kernel/kernel-debuggingskills/profilers/linux-perfskills/observability/ebpfskills/kernel-dev/writing-char-driversskills/debuggers/core-dumps