How Linux Maps Hardware to Kernel Drivers
Use lspci, lsusb, lsmod, modinfo, and sysfs to identify bound, loaded, built-in, and missing Linux drivers, then trace probe failures with confidence.
Use lspci, lsusb, lsmod, modinfo, and sysfs to identify bound, loaded, built-in, and missing Linux drivers, then trace probe failures with confidence.
The linux-surface kernel makes Surface Book hardware work on Linux. Learn which patches you need, how to verify installation, and what still breaks.
apt autoremove only removes auto-installed kernels. Learn why manual installs, held packages, and the running kernel stay behind, and how to safely purge them.
Kernel panics stop your machine to prevent data corruption. Learn to read panic messages, test hardware, and fix broken drivers before you reinstall anything.
SIGUSR1 defaults to terminating processes with no core dump. Learn why POSIX chose this behavior, how to install handlers, and debug unexpected signal deaths.
File descriptors are per-process integers that index into a three-layer table structure. Learn how the kernel connects descriptors to open files and inodes.
Linux processes cycle through R, S, D, and T states. Learn to read /proc, use strace, and diagnose stuck tasks without guessing or killing blindly.
Have you ever wondered how a user program actually reaches the kernel to do privileged work? I set the goal for this tutorial: show how a program crosses the CPU boundary, what the kernel does next, and how you can verify behavior with tracing tools. I explain what you will be able to do by […]
Packet steering spreads network load across CPU cores on multi-core routers, but only helps if one core is bottlenecked. Check /proc/interrupts first to decide.
CVE-2013-6282 has been patched in upstream kernels for over a decade. Learn why scanners still flag it and how to confirm your system is actually fixed.
Load and attach XDP programs to network interfaces using bpftool and ip link pinned syntax. Master the two-step process: pin first, then attach to eth0.
GPL-2.0 governs the Linux kernel. Find the authoritative license text in COPYING and LICENSES/preferred/GPL-2.0, plus what compliance actually requires.
Live patching fixes CVEs in place without rebooting, but kernel version upgrades need kexec or a restart. Learn which tool solves your actual problem.
Track Linux kernel versions from 1991 to present with release dates, LTS support windows, and how to verify your running kernel’s patch status.
Test whether a kernel caused your Ubuntu issue by booting an older version from GRUB’s Advanced Options menu – no packages deleted, no permanent changes.
Set up automatic Linux kernel upgrades safely with unattended-upgrades or live patching. Learn when to automate, how to verify updates, and rollback strategies.
Stop looking for CONFIG_HAVE_EBPF_JIT in menuconfig. Stop looking for CONFIG HAVE EBPF JIT in menuconfig. It describes a marker, not a feature you switch on.
You want clear backtraces and fast troubleshooting, so I show how to compile kernel with debug symbols and turn cryptic traces into actionable clues. I’ve guided many engineers through building a linux kernel that keeps rich DWARF info, frame pointers, and module matches—so GDB and SystemTap find meaningful names instead of hex addresses. We’ll cover […]
LKML is where kernel patches get reviewed and merged. Learn to search lore.kernel.org, report bugs correctly, and follow threads to actual fixes.
You want a clear path to add a configuration option that shows up in menuconfig and builds cleanly without wasted rebuilds. I’ll walk you through a compact, practical approach that ties a tiny example driver into the kernel configuration, so the symbol appears where it should and obeys dependencies. We’ll cover the essential config and […]
Pixie uses eBPF to auto-instrument Kubernetes workloads, capturing HTTP, gRPC, and TLS traffic at the kernel level with zero code changes or sidecars.
Master kernel debugging by setting up QEMU with GDB for live stepping, using ftrace to trace execution, and deploying KASAN to catch memory corruption.
Master kernel modules with lsmod, modprobe, and dmesg. Learn to load drivers, manage dependencies, and fix load failures without rebooting your system.
Update your Linux kernel using apt, dnf, pacman, or zypper depending on your distribution. Learn the right command and why rebooting matters.