Analysing differences in kernel parameters
summary
DiffKemp automatically checks whether a function or runtime parameter behaves identically across two Linux kernel versions by compiling code with Clang/LLVM (via Kbuild, optimizations off), slicing and simplifying the IR, doing a syntactic diff and — when needed — translating code to logic and asking an SMT solver for a counterexample. It flags concrete changed call sites, reports that ~750 whitelisted functions were scanned between releases and ~100 showed syntactic differences, provides per-function diffs and a Docker image for reproducing the analysis.
AI-written summary · about
chapters (9)
- 0:00Start
- 0:18What is the goal?
- 1:42Why Analysing Differences?
- 3:14Why can't we just use diff?
- 6:35How do we do it?
- 11:52Code slicing and simplifying
- 13:02Syntax diff
- 14:17Semantic diff there comes the science
- 15:36Demo
related talks
31mEnhancing Kernel Functional Safety Analysis with KS-nav
38mDeep Dive Into Linux Kernel Livepatch
16mXkernel: Principled Performance Tunability of Operating System Kernels
26mKeynote: The Kernel Report
35mDeep-Kernel Treasure Hunt: Finding exploitable structures in the Linux kernel
53mNumchecker: A System Approach for Kernel Rootkit Detection
30mKernel Testing with KUnit: Bridging the Gap
41mCross Industry Demands and Collaboration Opportunities
