Linux kernel resources
[PATCH] Kernel probes for i386 2.5.26 [2002-07-20]
[PATCH] Kernel probes for 2.5.30 [2002-08-02]
[PATCH] (re-xmit): kprobes for i386 [2002-08-20]
[patch] kprobes for 2.5.73 with single-stepping out-of-line (follow-ups) [2003-06-24]
[0/3]kprobes-base-268-rc3.patch (follow-ups) [2004-08-05]
[1/3] kprobes-func-args-268-rc3.patch (follow-ups) [2004-08-05]
[2/3] kprobes-netfilter-268-rc3.patch [2004-08-05]
[3/3] kprobes-netpktlog-268-rc3.patch (follow-ups) [2004-08-05]
[0/4] Kprobes patcheshemminger at osdl.org [2004-08-11]
[1/4] Exceptions Notifier patch (follow-ups) [2004-08-11]
[2/4] Kprobes base patch [2004-08-11]
[3/4] Jumper Probes patch to provide function arguments (follow-ups) [2004-08-11]
[4/4] Network packet tracer module using kprobes interface. [2004-08-11]
Linux 2.6.9-rc2 [2004-09-13]
relayfs documentation sucks? [2005-07-16]
Kernel debugging with Kprobes [2004-08-19]
Kernel command using Linux system calls [2007-03-21]
Anatomy of the Linux kernel [2007-06-06]
Anatomy of the Linux slab allocator [2007-05-15]
Anatomy of Linux synchronization methods [2007-10-31]
Anatomy of Linux flash file systems [2008-05-20]
Anatomy of the Linux loadable kernel modules [2008-07-16]
Anatomy of Linux dynamic libraries [2008-08-20]
TASK_KILLABLE: New process state in Linux [2008-09-30]
SystemTap: Instrumenting the Linux Kernel for Analyzing Performance and Functional Problems [2008-12-09]
Anatomy of Linux process management [2008-12-20]
Linux introspection and SystemTap [2009-11-09]
Kernel APIs, Part 1: Invoking user-space applications from the kernel [2010-02-16]
Kernel APIs, Part 2: Deferrable functions, kernel tasklets, and work queues [2010-03-02]
Kernel APIs, Part 3: Timers and lists in the 2.6 kernel [2010-03-30]
Monitor Linux file system events with inotify [2010-04-06]
Anatomy of Linux Kernel Shared Memory [2010-04-07]
Code browsing
Hacking tools
Debug
Memory allocation
Understanding Initcall mechanism
Syscall trace
Changes
Driver porting: The seq_file interface
What every programmer should know about memory
Injecting faults into the kernel [2006-11-14]
On DTrace envy [2007-08-07]
Kernel markers [2007-08-15]
API changes in the 2.6 kernel series [2008-04-29]
A summary of 2.6.26 API changes [2008-06-11]
Kernel Fault injection framework using SystemTap [2008-07-11]
Documentation/ftrace.txt (Function Tracer) [2008-07-16]
Tracing: no shortage of options [2008-07-22]
KS2008: Tracing [2008-09-17]
A SystemTap update [2009-01-21]
KernInst
LTTng + LTTV
SystemTap
SystemTap GUI
Real Life Examples of Solving Performance Problems Using SystemTap [2006-10-31]
Profiling Desktop Apps [2007-01-20]
Problem Solving with SystemTap [2007-05-09]
Using SystemTap for Dynamic Tracing and Performance Analysis [2007-05-09]
Two ptrace-free ways to virtualize system calls [2007-09-02]
Linux Tips and Tricks for Developers [2007-11-11]
Writing SystemTap Scripts (Melbourne) [2008-01-28]
Dynamic Tracing and Performance Analysis Using SystemTap [2008-08-04]
Kernel support for user debugging: ptrace, utrace, and what's next [2008-09-17]
SystemTap Tutorial [2008-09-18]
Writing SystemTap Scripts (Beijing) [2008-10-19]
Systemtap times [2009-04-13]
Understanding Computer Performance with Systemtap [2009-09-02]
Adventures in real-time performance tuning, part 1 [2008-11]
Adventures in real-time performance tuning, part 2 [2008-11]
Deploying LTTng on Exotic Embedded Architectures (paper) [2009-04]
Dynamic Instrumentation of user-space application based on kprobe [2009-04]
KProbes and Systemtap Status [2009-04]
Building Embedded Linux Systems with Buildroot [2009-04]
Embedded building tools [2009-04]
Analyzing Kernel Function Execution with Ftrace [2009-10]
relayfs: An Efficient Unified Approach for Transmitting Data from Kernel to User Space [2003]
Fault Injection Test Harness [2003]
Evolution in Kernel Debugging using Hardware Virtualization With Xen [2006]
Problem Solving With Systemtap [2006]
The LTTng tracer: A low impact performance and behavior monitor for GNU/Linux [2006]
Probing the Guts of Kprobes [2006]
Ltrace Internals [2007]
Ptrace, Utrace, Uprobes: Lightweight, Dynamic Tracing of User Apps [2007]
Linux Kernel Debugging on Google-sized clusters [2007]
The 7 dwarves: debugging information beyond gdb [2007]
Djprobe -- Kernel probing with the smallest overhead [2007]
LTTng: Tracing across execution layers, from the Hypervisor to user-space [2008]
Performance Inspector Tools with Instruction Tracing and Per-Thread/Function Profiling [2008]
A Runtime Code Modification Method for Application Programs [2008]
Where Linux Kernel Documentation Hides [2008]
Dynamic Debug [2009]
Measuring Function Duration with Ftrace [2009]
Combined Tracing of the Kernel and Applications with LTTng [2009]
Hardware Breakpoint (or watchpoint) usage in the Linux Kernel [2009]
Analyzing System Behavior With Kernel Tracing [2009]
Measuring Function Duration with Ftrace [2009]
LTTng, Filling the Gap Between Kernel Instrumentation and a Widely Usable Kernel Tracer [2009]
utrace: a new in-kernel API for debugging and tracing user tasks [2009]
Uprobes: User-Space Probes [2009]
Ksplice - Rebootless Kernel updates [2009]
KVM: Linux-based Virtualization [2009]
Dynamic Event Tracing in Linux Kernel [2010]
LTTng, State of the Union [2010]
Tracing System Wide, A User Perspective [2010]
Uprobes: User-Space Probes [2010]
Write a Real, Working, Linux Driver [2009]
Effective Use of Kernel Debugging Tools for System Software Product Development [2009]
Who owns the interface? [2008]
Unified error handling -- A worthy goal? [2009]
Challenges with Userspace USB Embedded Device Interfacing [2009]
Out of Memory - Helping Applications Survive the Axe or Report the Aftermath [2009]
Performance Counters on Linux [2009]
Kernel Space - User Space Interfaces [2008-07]
Interactive map
Linux technology reference
Linux Cross Reference
Sreekrishnan Venkateswaran, Essential Linux Device Drivers
Wolfgang Mauerer, Professional Linux Kernel Architecture
My old list of linux kernel resources that I think I created in 2008 and maintained up to 2010. It may have some historical value. A lot of links may be defunct now. I may attempt updating it in the future to fix them (provide links to working copies, e.g. from web archives).