~/talk

Klint: Compile-time Detection of Atomic Context Violations for Kernel Rust Code

Talkat Linux Plumbers Conference 2023 · 2023-11-13..11-15· [rust, testing]
links:none on file
slides:none on file

Klint is a compile-time checker for Kernel Rust that enforces compile-time detection of sleeping-in-atomic-context errors by tracking a function’s relative preemption-count adjustment and its expected entry range. It infers properties for most Rust code, requires explicit annotations at FFI and ArcWake boundaries, and already found a real RCU-related UAF bug where a waker kept a task alive and dropped it inside atomic context. Current limits: conditional/data-dependent lock paths, function-pointer calls, and Rust-generated extra drops.

AI-written summary · about

  1. 0:00Introduction and context
  2. 1:26Introducing Pink tool
  3. 2:08Rust safety and atomic context
  4. 7:27Safety requirements for APIs
  5. 11:45Design goals of Pink
  6. 13:54How Pink enforces rules
  7. 16:05Annotating functions in Pink
  8. 19:16Case study on Linux kernel
  9. 23:13Limitations and future work
  10. 26:00Conclusion and resources
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.