High memory management API changes
summary
Work on highmem replaces global kmap/kmap_atomic with kmap_local_page that creates per-thread mappings to support thread-local protection keys (PKS) and persistent memory use; existing kmap/kmap_atomic calls are deprecated kmap/kmap_atomic. Conversion work is ongoing across hundreds of call sites; folio-backed mappings may use a folio vmap fallback for multi-page objects. Documentation gaps around cache/TLB flush variants and a policy to don't add highmem to new architectures are highlighted.
AI-written summary · about
chapters (9)
- 0:00Intro
- 1:05Review
- 2:13Why
- 5:33Page Address
- 9:47KMAP Local Page
- 11:34Do we need high memory
- 15:18How much more should the API change
- 19:48New API
- 27:20Conclusion
related talks
46mHighmem deprecation planning
51mIntroduction to Memory Management in Linux
38mKernel Hardening: Protecting the Protection Mechanisms
30mdrm and cgroup memory management - two great tastes
12mRethinking File Mapping for Persistent Memory
21mSupporting guest private memory in Protected KVM on Android
26mLet's demystify memory
30miommu page table consolidation and iommufd
