├── .gitignore ├── LICENSE ├── README.md ├── ch1 ├── kconfig_dbg01 └── kconfig_prod01 ├── ch10 ├── cause_oops_panic.sh ├── kthread_stuck │ ├── Makefile │ └── kthread_stuck.c ├── letspanic │ ├── Makefile │ └── letspanic.c ├── netcon ├── panic_notifier │ ├── Makefile │ └── panic_notifier_lkm.c └── workq_stall │ ├── Makefile │ └── workq_stall.c ├── ch11 ├── .gitattributes ├── README.txt ├── gdbline.sh ├── kconfig_x86-64_target ├── kgdb_try │ ├── Makefile │ └── kgdb_try.c ├── rootfs_deb.img.7z └── run_target.sh ├── ch3 ├── dyndbg.sh ├── miscdrv_rdwr │ ├── Makefile │ ├── miscdrv_rdwr.c │ └── rdwr_test_secret.c ├── printk_loglevels │ ├── Makefile │ └── printk_loglevels.c └── ratelimit_test │ ├── Makefile │ └── ratelimit_test.c ├── ch4 └── kprobes │ ├── 1_kprobe │ ├── 1_kprobe.c │ ├── Makefile │ ├── run │ └── test.sh │ ├── 2_kprobe │ ├── 2_kprobe.c │ ├── Makefile │ ├── run │ └── test.sh │ ├── 3_kprobe │ ├── 3_kprobe.c │ ├── Makefile │ ├── run │ └── test.sh │ └── 4_kprobe_helper │ ├── Readme.txt │ ├── common.sh │ ├── err_common.sh │ ├── helper_kp.c │ └── kp_load.sh ├── ch5 └── kmembugs_test │ ├── Makefile │ ├── debugfs_kmembugs.c │ ├── kmembugs_test.c │ ├── load_testmod │ └── run_tests ├── ch7 ├── oops_inirqv3 │ ├── Makefile │ └── oops_inirqv3.c ├── oops_tryv1 │ ├── Makefile │ └── oops_tryv1.c └── oops_tryv2 │ ├── Makefile │ └── oops_tryv2.c ├── ch8 └── kcsan_datarace │ ├── Makefile │ ├── kcsan_datarace.c │ └── tester.sh ├── ch9 ├── ftrace │ ├── ftrace_common.sh │ ├── ftrc_1s.sh │ ├── ping_ftrace.sh │ ├── ping_ftrace_report.txt │ ├── ping_ftrace_set_event_report.txt │ └── runner ├── lttng │ └── lttng_trc.sh └── tracecmd │ ├── trace-cmd-wrapper-readme.txt │ ├── trc-cmd2-mod.sh │ └── trccmd_1ping.sh ├── convenient.h ├── dwarves_1.17-1_amd64.deb ├── lkm ├── pkg_install4ubuntu_lkd.sh ├── updtMakefile2better ├── updtMakefile2better_ALL └── xplore_fs /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/README.md -------------------------------------------------------------------------------- /ch1/kconfig_dbg01: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch1/kconfig_dbg01 -------------------------------------------------------------------------------- /ch1/kconfig_prod01: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch1/kconfig_prod01 -------------------------------------------------------------------------------- /ch10/cause_oops_panic.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch10/cause_oops_panic.sh -------------------------------------------------------------------------------- /ch10/kthread_stuck/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch10/kthread_stuck/Makefile -------------------------------------------------------------------------------- /ch10/kthread_stuck/kthread_stuck.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch10/kthread_stuck/kthread_stuck.c -------------------------------------------------------------------------------- /ch10/letspanic/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch10/letspanic/Makefile -------------------------------------------------------------------------------- /ch10/letspanic/letspanic.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch10/letspanic/letspanic.c -------------------------------------------------------------------------------- /ch10/netcon: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch10/netcon -------------------------------------------------------------------------------- /ch10/panic_notifier/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch10/panic_notifier/Makefile -------------------------------------------------------------------------------- /ch10/panic_notifier/panic_notifier_lkm.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch10/panic_notifier/panic_notifier_lkm.c -------------------------------------------------------------------------------- /ch10/workq_stall/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch10/workq_stall/Makefile -------------------------------------------------------------------------------- /ch10/workq_stall/workq_stall.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch10/workq_stall/workq_stall.c -------------------------------------------------------------------------------- /ch11/.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch11/.gitattributes -------------------------------------------------------------------------------- /ch11/README.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch11/README.txt -------------------------------------------------------------------------------- /ch11/gdbline.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch11/gdbline.sh -------------------------------------------------------------------------------- /ch11/kconfig_x86-64_target: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch11/kconfig_x86-64_target -------------------------------------------------------------------------------- /ch11/kgdb_try/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch11/kgdb_try/Makefile -------------------------------------------------------------------------------- /ch11/kgdb_try/kgdb_try.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch11/kgdb_try/kgdb_try.c -------------------------------------------------------------------------------- /ch11/rootfs_deb.img.7z: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch11/rootfs_deb.img.7z -------------------------------------------------------------------------------- /ch11/run_target.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch11/run_target.sh -------------------------------------------------------------------------------- /ch3/dyndbg.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch3/dyndbg.sh -------------------------------------------------------------------------------- /ch3/miscdrv_rdwr/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch3/miscdrv_rdwr/Makefile -------------------------------------------------------------------------------- /ch3/miscdrv_rdwr/miscdrv_rdwr.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch3/miscdrv_rdwr/miscdrv_rdwr.c -------------------------------------------------------------------------------- /ch3/miscdrv_rdwr/rdwr_test_secret.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch3/miscdrv_rdwr/rdwr_test_secret.c -------------------------------------------------------------------------------- /ch3/printk_loglevels/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch3/printk_loglevels/Makefile -------------------------------------------------------------------------------- /ch3/printk_loglevels/printk_loglevels.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch3/printk_loglevels/printk_loglevels.c -------------------------------------------------------------------------------- /ch3/ratelimit_test/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch3/ratelimit_test/Makefile -------------------------------------------------------------------------------- /ch3/ratelimit_test/ratelimit_test.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch3/ratelimit_test/ratelimit_test.c -------------------------------------------------------------------------------- /ch4/kprobes/1_kprobe/1_kprobe.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch4/kprobes/1_kprobe/1_kprobe.c -------------------------------------------------------------------------------- /ch4/kprobes/1_kprobe/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch4/kprobes/1_kprobe/Makefile -------------------------------------------------------------------------------- /ch4/kprobes/1_kprobe/run: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch4/kprobes/1_kprobe/run -------------------------------------------------------------------------------- /ch4/kprobes/1_kprobe/test.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch4/kprobes/1_kprobe/test.sh -------------------------------------------------------------------------------- /ch4/kprobes/2_kprobe/2_kprobe.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch4/kprobes/2_kprobe/2_kprobe.c -------------------------------------------------------------------------------- /ch4/kprobes/2_kprobe/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch4/kprobes/2_kprobe/Makefile -------------------------------------------------------------------------------- /ch4/kprobes/2_kprobe/run: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch4/kprobes/2_kprobe/run -------------------------------------------------------------------------------- /ch4/kprobes/2_kprobe/test.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch4/kprobes/2_kprobe/test.sh -------------------------------------------------------------------------------- /ch4/kprobes/3_kprobe/3_kprobe.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch4/kprobes/3_kprobe/3_kprobe.c -------------------------------------------------------------------------------- /ch4/kprobes/3_kprobe/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch4/kprobes/3_kprobe/Makefile -------------------------------------------------------------------------------- /ch4/kprobes/3_kprobe/run: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch4/kprobes/3_kprobe/run -------------------------------------------------------------------------------- /ch4/kprobes/3_kprobe/test.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch4/kprobes/3_kprobe/test.sh -------------------------------------------------------------------------------- /ch4/kprobes/4_kprobe_helper/Readme.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch4/kprobes/4_kprobe_helper/Readme.txt -------------------------------------------------------------------------------- /ch4/kprobes/4_kprobe_helper/common.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch4/kprobes/4_kprobe_helper/common.sh -------------------------------------------------------------------------------- /ch4/kprobes/4_kprobe_helper/err_common.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch4/kprobes/4_kprobe_helper/err_common.sh -------------------------------------------------------------------------------- /ch4/kprobes/4_kprobe_helper/helper_kp.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch4/kprobes/4_kprobe_helper/helper_kp.c -------------------------------------------------------------------------------- /ch4/kprobes/4_kprobe_helper/kp_load.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch4/kprobes/4_kprobe_helper/kp_load.sh -------------------------------------------------------------------------------- /ch5/kmembugs_test/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch5/kmembugs_test/Makefile -------------------------------------------------------------------------------- /ch5/kmembugs_test/debugfs_kmembugs.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch5/kmembugs_test/debugfs_kmembugs.c -------------------------------------------------------------------------------- /ch5/kmembugs_test/kmembugs_test.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch5/kmembugs_test/kmembugs_test.c -------------------------------------------------------------------------------- /ch5/kmembugs_test/load_testmod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch5/kmembugs_test/load_testmod -------------------------------------------------------------------------------- /ch5/kmembugs_test/run_tests: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch5/kmembugs_test/run_tests -------------------------------------------------------------------------------- /ch7/oops_inirqv3/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch7/oops_inirqv3/Makefile -------------------------------------------------------------------------------- /ch7/oops_inirqv3/oops_inirqv3.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch7/oops_inirqv3/oops_inirqv3.c -------------------------------------------------------------------------------- /ch7/oops_tryv1/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch7/oops_tryv1/Makefile -------------------------------------------------------------------------------- /ch7/oops_tryv1/oops_tryv1.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch7/oops_tryv1/oops_tryv1.c -------------------------------------------------------------------------------- /ch7/oops_tryv2/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch7/oops_tryv2/Makefile -------------------------------------------------------------------------------- /ch7/oops_tryv2/oops_tryv2.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch7/oops_tryv2/oops_tryv2.c -------------------------------------------------------------------------------- /ch8/kcsan_datarace/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch8/kcsan_datarace/Makefile -------------------------------------------------------------------------------- /ch8/kcsan_datarace/kcsan_datarace.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch8/kcsan_datarace/kcsan_datarace.c -------------------------------------------------------------------------------- /ch8/kcsan_datarace/tester.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch8/kcsan_datarace/tester.sh -------------------------------------------------------------------------------- /ch9/ftrace/ftrace_common.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch9/ftrace/ftrace_common.sh -------------------------------------------------------------------------------- /ch9/ftrace/ftrc_1s.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch9/ftrace/ftrc_1s.sh -------------------------------------------------------------------------------- /ch9/ftrace/ping_ftrace.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch9/ftrace/ping_ftrace.sh -------------------------------------------------------------------------------- /ch9/ftrace/ping_ftrace_report.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch9/ftrace/ping_ftrace_report.txt -------------------------------------------------------------------------------- /ch9/ftrace/ping_ftrace_set_event_report.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch9/ftrace/ping_ftrace_set_event_report.txt -------------------------------------------------------------------------------- /ch9/ftrace/runner: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch9/ftrace/runner -------------------------------------------------------------------------------- /ch9/lttng/lttng_trc.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch9/lttng/lttng_trc.sh -------------------------------------------------------------------------------- /ch9/tracecmd/trace-cmd-wrapper-readme.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch9/tracecmd/trace-cmd-wrapper-readme.txt -------------------------------------------------------------------------------- /ch9/tracecmd/trc-cmd2-mod.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch9/tracecmd/trc-cmd2-mod.sh -------------------------------------------------------------------------------- /ch9/tracecmd/trccmd_1ping.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/ch9/tracecmd/trccmd_1ping.sh -------------------------------------------------------------------------------- /convenient.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/convenient.h -------------------------------------------------------------------------------- /dwarves_1.17-1_amd64.deb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/dwarves_1.17-1_amd64.deb -------------------------------------------------------------------------------- /lkm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/lkm -------------------------------------------------------------------------------- /pkg_install4ubuntu_lkd.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/pkg_install4ubuntu_lkd.sh -------------------------------------------------------------------------------- /updtMakefile2better: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/updtMakefile2better -------------------------------------------------------------------------------- /updtMakefile2better_ALL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/updtMakefile2better_ALL -------------------------------------------------------------------------------- /xplore_fs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PacktPublishing/Linux-Kernel-Debugging/HEAD/xplore_fs --------------------------------------------------------------------------------