Linux Plumbers Conference 2022
2022-09-12..2022-09-14
Dublin, Ireland
[Linux Plumbers Conference 2022, Linux Plumbers Conference 2023, Linux Plumbers Conference 2025]
| title | author | length |
|---|---|---|
| The Maple Tree | Liam R. Howlett | 26m |
Maple Tree implements a compact, range-oriented B-tree variant with 256-byte nodes (four cache lines), RCU-safe operations, bulk loading and pre-allocation… | ||
| Zettalinux: It's Not Too Late To Start | Matthew Wilcox | 42m |
Argues Linux must prepare now for 128-bit pointers and registers to avoid a repeat of the 32→64 mess, citing file-size and address-space limits around… | ||
| Rust | Miguel Ojeda, Wedson Almeida Filho | 44m |
Patch series v9 contains the minimal kernel crate changes and shrinks the original set to v9 reduced to ~3% of code, leaving the other Rust abstractions to… | ||
| What kernel documentation could be | Jonathan Corbet | 41m |
Kernel documentation is a big messy pile that needs reorganization by audience, not author: propose a redesigned front page (current printout is 26 sheets)… | ||
| Current Status and Future Plans of DAMON | SeongJae Park | 45m |
DAMON provides a centralized memory access monitoring framework that enforces bounded overhead by default and conceptually scans all system memory every 5 ms… | ||
| Why is devm_kzalloc() harmful and what can we do about it | Laurent Pinchart | 44m |
Argument: devm_kzalloc ties memory to the physical struct device, so unplugging or unbinding frees resources while user processes still hold file descriptors… | ||
| Modernizing the kdump dump tools | Philipp Rudo | 45m |
The kdump toolchain (makedumpfile + crash) accumulates decades of unstable KABI parsing, causing real bugs and security risk — one sparse-mem change from 2017… | ||
| Regression tracking & fixing: current state, problems, and next steps | Thorsten Leemhuis | 44m |
Automated tracking with rexbot collects regression reports from the mailing list and Bugzilla, watches for patches labeled with the link tag, and marks… | ||
| nouveau in the times of nvidia firmware and open source kernel module | David Airlie | 33m |
Nouveau faces signed firmware that blocks re‑clocking and performance since Maxwell2 and now a RISC‑V GSP with 30–40 MB GSP firmware that must load before the… | ||
| Meta’s CXL Journey and Learnings in Linux | Jonathan Zhang | 37m |
Meta reports system-level prototypes that meet latency and power budgets and upstream kernel work including transparent page placement and a user-space… | ||
| TCP memory isolation on multi-tenant servers | Christian Warloe, Shakeel Butt, Wei Wang | 44m |
Proposes removing the global tcp_mem limit and charging TCP socket buffers to cgroup memory limits, implements a measurement mode to gather per-job TCP memory… | ||
| Kernel Live Patching at Scale | Song Liu, Rik van Riel, David Carl Vernet | 41m |
Facebook uses kernel live patching (KLP) with ftrace IP-modify to push cumulative fixes as RPMs across millions of servers, rolling a new cumulative KLP module… | ||
| Live in a world with multiple memory types | Ying Huang | 43m |
Kernel support lands for NUMA balancing-based promotion and explicit mm parameters, with demotion implemented as page reclaim migration to PMEM and promotion… | ||
| Inside the Linux Kernel Random Number Generator | Jason A. Donenfeld | 45m |
The Linux RNG replaces fragile LFSR math with a cryptographic pipeline using blake2s for mixing and ChaCha20 per-CPU streams, avoiding global locks for large… | ||
| Profiling data structures | Arnaldo Carvalho de Melo | 48m |
Combines hardware sampling and type-aware layout introspection to find false sharing and hot fields: uses perf record -a mem-loads with PEBS/C2C load-latency… | ||
| PREEMPT_RT - how not to break it. | Sebastian Siewior | 46m |
Printk and console output can block interrupts long enough to kill RT goals: 20 characters ≈ 0.5 ms printing so the kernel needs a way to log without disabling… | ||
| Launching new processes with `io_uring_spawn` for fast builds | Josh Triplett | 40m |
An io_uring extension implements io_uring_spawn by adding clone+exec ops that run linked setup operations entirely in-kernel so no fork copy or user-space… | ||
| Exercising the Linux scheduler with Yogini | Len Brown | 42m |
A small user-space tool called Yogini generates calibrated workloads, samples hardware counters and outputs TSV system reports; it runs built-in loops… | ||
| OS Scheduling with Nest: Keeping Tasks Close Together on Warm Cores | Julia Lawall | 46m |
A scheduler patch called Nest keeps a small primary nest of recently used cores plus a reserve nest and briefly does idle spinning to keep cores at higher DVFS… | ||
| RV: where are we? | Daniel Bristot de Oliveira | 45m |
Runtime verification (RV) is now merged in mainline (6.0) as a tracing-based subsystem that runs automata as per-CPU C monitors generated by the tool dot2k… | ||
| Modularization for Lockdep | Boqun Feng | 33m |
Proposes splitting lockdep into a front-end that keeps a per-task lock array even when lockdep is off, a pipeline that can cache dependencies, and a back end… | ||
| Make RCU do less (save power)! | Joel Fernandes, Rushikesh Kadam, Uladzislau Rezki | 39m |
Default RCU keeps the scheduler tick firing during idle and generates thousands of tiny wakes (2500/sec observed), which suppresses deep package C‑states and… | ||
| Restartable Sequences: Scheduler-Aware Scaling of Memory Use on Many-Core Systems | Mathieu Desnoyers | 44m |
Patches implement a per-memory-space virtual CPU ID and per-mm bitmaps plus a small runqueue vcpu cache so scheduler assigns short-lived IDs without global… | ||
| How I started chasing speculative type confusion bugs in the kernel and ended up wi... | Jakob Koschel | 38m |
Built a dynamic taint-based scanner that instruments the kernel with DFSan/kdf, fuzzes syscalls, takes stack/register snapshots, emulates a flipped branch with… | ||
| The journey of BPF from restricted C language towards extended and safe C. | Alexei Starovoitov | 36m |
BPF moves from a tiny, restricted C subset to an extended, safer C by adding concrete features: a preserve access index front-end that yields symbolic field… | ||
| HID-BPF | Benjamin Tissoires | 29m |
HID-BPF embeds BPF into the HID stack so small per‑device BPF programs can rewrite report descriptors and mutate or drop input bytes before kernel driver… | ||
| eBPF Kernel Scheduling with Ghost | Barret Rhoden | 32m |
Ghost runs as a sched class below CFS, sends kernel messages to an agent and accepts agent transactions; BPF programs embed in the agent and act with… | ||
| Can the Linux networking stack be used with very high speed applications? | David Ahern | 34m |
Experiments use two commodity Ryzen 9 Zen3 servers, VCU1525 FPGAs over PCIe Gen3 x16 and unmodified Linux kernels (5.11 → 5.13) to push line rates; a custom… | ||
| Overview of the BPF networking hooks and user experience in Meta | Martin Lau | 32m |
Walks through which BPF hooks run where (driver XDP, TC, routing, SK_LOOKUP, SK_SKB, cgroup/socket callbacks) and what they can actually do: header… | ||
| BPF Signing and IMA integration | KP Singh | 24m |
Proposal signs BPF by embedding a signature into the loader/skeleton artifact (instruction buffer plus relocations) and verifies it at the BPF prog_alloc LSM… | ||
| Revisiting eBPF Seccomp Filters | Jinghao Jia, Tianyin Xu | 35m |
Argues that replacing classic BPF with eBPF for seccomp makes filters stateful filters using ebpf maps and helpers, enabling concrete features: syscall-account… | ||
| State of kprobes/trampolines batch attachment | Jiri Olsa | 37m |
Kernel adds a fast batch attach path for kprobes using ftrace: a new kpro_multi link and register_fprobe wrapper let one syscall attach a BPF program to many… | ||
| Developing eBPF profiler for polyglot cloud-native appli... | Vaishali Thakkar, Javier Honduvilla Coto | 32m |
An eBPF-based profiler is built that generates per-binary unwind tables from DWARF/eh_frame and loads them into kernel maps so user-space stack walking works… | ||
| Performance insights into eBPF step by step | Dmitrii Dolgov | 30m |
LLVM optimization reports show 6,000 compiler warnings about untaken optimizations, and adding `restrict` removes hundreds of duplicated loads, reducing… | ||
| Tuning in-kernel routines on RISC-V | Heiko Stuebner | 27m |
Trying to speed kernel string and memcpy paths on RISC‑V by switching to architecture‑optimized implementations instead of the generic C fallbacks, with… | ||
| Confidential Computing for RISC-V-based Platforms | Ravi Sahita | 31m |
Proposes a RISC‑V confidential VM model implemented via the H (hypervisor) extension with a small TSM running in HS mode that enforces isolation, measures… | ||
| What to do with kconfig.socs? | Conor Dooley | 20m |
kconfig.socs currently holds five entries in kconfig.socs that try and drive dozens of drivers via select and imply, which breaks dependencies, overrides… | ||
| RISC-V ACPI and UEFI Updates | Sunil V L | 34m |
Provides concrete status: two initial ECRs (MADT IRQ info and a new RHCT table for ISA strings) are submitted to UEFI review and already enable a… | ||
| The Odyssey of HWCAP on RISC-V platforms | ChuanTzu Tsai | 30m |
Linux faces many incompatible vendor extensions and an unstable ISA string, so the proposal stores rich platform info in the VDSO and publishes its address via… | ||
| Intro | Atish Patra, Palmer Dabbelt | 03m |
Thanks to sponsors, schedule overview, and microconference layout are covered; about 17 people on-site and roughly 10 remote attendees; sessions are… | ||
| Make LL/SC arch has a strict forward guarantee | Ren Guo | 31m |
Claims that LL/SC ISAs lack a strict forward-progress guarantee and that microarchitecture details determine whether loads-reserve/store-conditional succeed… | ||
| Extending EFI support in Linux to new architectures | Ard Biesheuvel, Ilias Apalodimas | 28m |
Goal is a generic EFI boot path that avoids x86-specific hacks like shim/grub workarounds and mixed‑mode tricks. Implemented an EFI handover protocol so… | ||
| LoongArch: What we will do next | Huacai Chen, Jianmin Lv, Xuerui WANG | 29m |
LoongArch has core userspace and toolchain support upstream (binutils, GCC, glibc, gold, libffi, systemd) and basic kernel support lands around 5.19 with… | ||
| Consolidating representations of the physical memory | Mike Rapoport | 24m |
Argues for a single coarse-grain representation of physical memory that matches firmware maps and survives boot and kexec, proposes reusing or extending… | ||
| Mitigating speculative execution attacks with ASI - follow up | Junaid Shahid, Ofir Weisse | 27m |
KVM prototype implements ASI to map only non-sensitive pages and use page faults to stop speculative leaks, with the entry/exit path doing an ASI enter/exit… | ||
| High memory management API changes | Ira Weiny | 29m |
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… | ||
| New design for initrds | Zbigniew Jędrzejewski-Szmek | 39m |
Proposal replaces custom initrd scripts with systemd-based images built by mkosi, producing a compressed CPI initrd plus per-feature system extensions as GPT… | ||
| Towards Secure Unified Kernel Images for Generic Linux Distributions and Every... | Lennart Poettering | 43m |
Proposal builds a pre-built, vendor-signed unified kernel image (unified kernel image (UKI)) that packs the ELF kernel, a vendor-built initrd, fixed kernel… | ||
| Slimming down the journal | Daan De Meyer | 30m |
Binary journal format changes reduce disk use by changing offsets to 32-bit offsets (saves ~500 MB but limits files to 4 GB), storing field offsets in a shared… | ||
| #snapsafe: restoring uniqueness in Virtual Machine clones | Babis Chalios | 41m |
Problem: VM snapshots duplicate per-VM state like RNG seeds and host keys. Proposal adds a vmgenid generation counter (word-sized) and exposes it to user space… | ||
| systemd cgroup delegation and control processes | Michal Koutný | 27m |
A simple patch adds a new unit directive that explicitly places control processes into a chosen delegated cgroup and lets the unit specify where its payload… | ||
| Integrated PCIe monitoring and tracing facilities | Yicong Yang | 35m |
Integrated PCIe monitoring and tracing facilities embed a kisai PMU and a PTT tracer in the SoC PCIe controller to count link events and record TLP headers… | ||
| Exposing PCIe topology to Guest OS for peer-to-peer | Oded Gabbay | 28m |
Problem: guest kernels lack real PCI topology, ACS and root-complex type so the p2pdma check (map_type_list / “calc”) rejects or behaves unpredictably for VM… | ||
| Instant Detection of Virtual Devices | Ajay Kaher | 31m |
Measures mapping PCI config pages into guest MMIO (ECAM/MMCONFIG) to avoid VM exits, add a MMIO direct mapping path that drops ~3,200 PCI config accesses to… | ||
| PCIe Endpoint Subsystem Open Items Discussion | Kishon Vijay Abraham I, Manivannan Sadhasivam | 30m |
Proposal replaces atomic_notifier with a simple callback event_ops (coordinate, linkup) so EPF callbacks run in the same context as EPC, removing… | ||
| Cooperative DMA in a memory-oversubscribed environment | James Gowans | 26m |
Proposes making IOMMU page tables dynamic by adding a new ioctl VFIO_MAP_DMA_UNPINNED, hooking VFIO into MMU notifiers and an IOMMU domain callback remap_pte… | ||
| IOMMUFD Discussion | Jason Gunthorpe | 31m |
Project exposes full IOMMU features to user space via an iommufd API that aims to replace vfio internals, add passive device support and nested translation… | ||
| Isolation for broken hardware during system suspend | Rui Zhang | 06m |
Drivers can abort system suspend by returning errors from their suspend callbacks, which leaves a laptop seemingly asleep while it actually is not; networking… | ||
| Fine grain frequency control with kernel governors | Ray Huang | 11m |
Upstream MDP state CPUfreq driver exposes fine‑grained cppc performance levels instead of ACPI’s three P‑states and maps as many as 155–255 performance steps… | ||
| Linux per cpu idle injection | Srinivas Pandruvada | 21m |
Reuses and extends the existing powercap idle inject framework so the power clamp driver and per-CPU idle injector can coexist, adding callbacks for… | ||
| CPUfreq/sched and VM guest workload problems | Saravana Kannan | 28m |
Runs RTF synthetic benchmarks comparing host vs VM on little/big cores and finds wrong vCPU capacity and VM frequency assumptions cause premature migrations… | ||
| A generic energy model description | Daniel Lezcano | 22m |
Proposal to add a generic Linux energy model expressed in device tree: explicit per-performance-index dynamic power, static leakage, and transition energy cost… | ||
| Energy model accuracy | Morten Rasmussen | 24m |
Linux EAS uses static per-CPU tables mapping frequency to capacity and power, but real-device sweeps show up to 20% variation across workloads and OPPs; medium… | ||
| Combining DTPM with the thermal control framework | Daniel Lezcano | 16m |
Proposes a new power_cooling_device that centralizes all power math inside the DTPM energy‑model path and removes duplicated CPUfreq/thermal cooling… | ||
| Frequency-invariance gaps in current kernel | Rui Zhang | 50m |
Kernel uses a boot-time frq_max set at boot heuristic that often misrepresents available CPU capacity on Intel and hybrid systems; experiments run two… | ||
| Libre Silicon in IoT | Michael Welling | 36m |
Libre silicon becomes real via the SkyWater 130 nm open PDK plus OpenLANE/OpenROAD/Magic/Yosys/ABC, enabling fabricatable designs; a RISC‑V Pi Five SoC aims to… | ||
| All types of wireless in Linux are terrible and why the vendors should feel bad | Peter Robinson | 22m |
Linux Wi‑Fi and Bluetooth repeatedly break because vendor firmware updates arrive without reproducible testing: Intel Bluetooth firmware breaks Wi‑Fi across… | ||
| Linux IEEE 802.15.4 MLME improvements | Miquèl Raynal | 29m |
Adds scan and beacon interfaces exposed via netlink, implements a background worker that stops traffic, updates filters and issues MLME commands, and… | ||
| libgpiod V2: New Major Release with a Ton of New Features | Bartosz Golaszewski | 32m |
libgpiod v2 implements a redesigned user API: immutable line info snapshots, separated request config vs line config to avoid reconfigure mistakes, per-request… | ||
| Abusing zephyr and meta-zephyr | Eilís Ní Fhlannagáin | 20m |
Describes converting meta-zephyr into an OpenEmbedded-friendly flow that stops replicating Zephyr metadata, replaces hardcoded machine overrides with an… | ||
| Open source FPGA NVMe accelerator platform for BPF driven ML processing with Linux/... | Karol Gugala | 27m |
An open source FPGA NVMe accelerator platform that runs Cortex‑A53 + Cortex‑R5 with Linux and Zephyr uses remoteproc/OpenAMP to pass custom NVMe commands and… | ||
| Putting firmware on the device: a Zephyr+Yocto+Mender hike | Josef Holzmayr | 25m |
Shows a concrete pipeline that actually builds Zephyr RTOS firmware and a Yocto Linux image for an iMX7, produces SBOM/CVE reports and a Mender-ready artifact… | ||
| Percpu hashtab traversal measurement study | Brian Vazquez | 20m |
Study measures per-CPU BPF hash-table traversal cost using profiling and KStats on AMD Rome 256-core and Intel Skylake (~100 cores). With 40k-entry tables… | ||
| MPTCP: Extending kernel functionality with eBPF and Netlink | Matthieu Baerts | 32m |
MPTCP is upstream and uses IPPROTO_MPTCP and SKB extensions; user space can manage paths via Netlink for path events (iprout2, ipmptcp, NetworkManager 1.40)… | ||
| Socket termination for policy enforcement and load-balancing | Aditi Ghag | 27m |
Cilium needs to kill client sockets when backends or policies change, so the work adds a BPF iterator to scan kernel socket structs for destination IP or… | ||
| FW centric devices, NIC customization | Saeed Mahameed, Mark Bloch | 34m |
Modern NIC firmware contains half a million lines of core code and exposes roughly 600 configurable knobs, growing about 25% per year, so users must pick… | ||
| XDP gaining access to NIC hardware hints via BTF | Jesper Dangaard Brouer | 33m |
Adds a full BTF ID in metadata (u32 object + u32 type) as the last 8 bytes of XDP metadata so AF_XDP and in-kernel code can decode driver-specific NIC hints… | ||
| Bringing packet queueing to XDP | Toke Høiland-Jørgensen | 33m |
Proposal implements packet queuing inside XDP by adding a priority queue map for BPF redirect storage and using BPF timers as immediate callbacks to drive… | ||
| eBPF Standardization | Dave Thaler | 38m |
Effort creates a cross‑platform eBPF instruction set document in the Linux kernel rst, with a GitHub mirror for rendering and a planned PDF snapshot published… | ||
| Networking resource control with per-cgroup LSM | Stanislav Fomichev | 20m |
A per-cgroup LSM attaches BPF programs to existing LSM hooks so cgroup-local policies enforce socket creation, bind-port ranges, IPv4 denial and legacy socket… | ||
| How to share IPv4 addresses by partitioning the port space | Jakub Sitnicki, Marek Majkowski | 31m |
Describes a concrete implementation to share an IPv4 egress address by carving the ephemeral port space into 512-port slices assigned to servers; user-space… | ||
| A BPF map for online packet classification | Anton Protopopov | 41m |
A new single BPF wildcard map implements a hash‑based tuple/Double‑Merge classifier in kernel land with a user API described via a BTF/wildcard descriptor… | ||
| Cilium's BPF kernel datapath revamped | Daniel Borkmann | 30m |
A redesigned TC BPF datapath implements FD-based TC BPF attachments with a 32-slot multi-attach array (default 32 slots) so multiple programs attach without… | ||
| Machine reable description for netlink protocols (YAML?) | Jakub Kicinski | 01h 40m |
Proposal: a YAML-based, machine-readable description for netlink protocols that lets tools auto-serialize and deserialize messages and generate kernel… | ||
| Copy On Write, Get User Pages, and Mysterious Counters | David Hildenbrand | 29m |
Introduces a kernel flag called page on exclusive that prevents anonymous pages from being pinned while shared, so get_user_pages operations either trigger an… | ||
| Linux Kernel Control-Flow Integrity Sup... | João Moreira, Mark Rutland, Peter Zijlstra, Sami Tolvanen | 44m |
Kernel CFI uses compiler‑emitted type tags: a 32‑bit type hash before function entry and a matching check just before each indirect call, with a traps on… | ||
| Toolchain support for objtool in the Linux kernel | Josh Poimboeuf | 20m |
Objtool reverse engineers object-file CFGs to validate ORC unwinding, SMAP map checks and no-instrument regions, but it mis-parses no-return call sites… | ||
| CTF Frame in the Linux kernel | Indu Bhagat | 23m |
A compact unwind format that encodes CFA FP and RA offsets directly rather than using a DWARF bytecode so unwinding is simple and fast, with direct offset… | ||
| GCC's -fanalyzer and the Linux kernel | David Malcolm | 45m |
GCC adds the -fanalyzer (landed in GCC 10, use GCC 11+), now ~42 warnings in trunk, and performs symbolic execution to find use-after-free, leaks and taint… | ||
| Kernel ABI Monitoring a... | Dodji Seketeli, Giuliano Procida, Guillermo E. Martinez, Matthias Männich | 42m |
Kernel ABI tooling adds a CTF reader that extracts type info from vmlinux and modules, serializes it to a corpus and XML, and feeds existing comparators… | ||
| Programmable debuggers and the Linux kernel (drg... | Elena Zannoni, Jose E. Marchesi, Stephen Brennan | 38m |
drgn exposes kernel types as Python objects backed by a C core, reads vmlinux and kcore (with parallel DWARF loading), and already provides helpers for slab… | ||
| Status Report: Broken Dependency Orderings in the Linux Kernel | Marco Elver, Paul Heidekrüger | 46m |
A compiler-integrated checker named lkm dependency checker annotates LLVM IR in an annotation pass and later verifies those annotations in a verification pass… | ||
| Where are we on security features? | Kees Cook, Qing Zhao | 44m |
The update reports concrete compiler and kernel work: compilers and kernel reach parity on zeroing call-used registers and on structure-layout randomization… | ||
| Toolchain Track Welcome | Jose E. Marchesi, Nick Desaulniers | 02m |
Welcome to the Toolchain Track where sessions focus on concrete toolchain issues and actionable fixes rather than broad surveys. The program selects talks that… | ||
| PREEMPT_RT Q&A with tglx | Thomas Gleixner | 24m |
Q&A lists concrete blockers: getting printk real-time done, then converting a few hundred console drivers and enabling the switch before tackling lazy… | ||
| Linux needs a Scheduler QOS API -- and it isn't nice(2) | Len Brown | 25m |
Argues Linux needs a scheduler QOS API that accepts per-thread QoS hints (background / user-interactive / user-initiated) so Chromium can map its thread… | ||
| Limit the idle CPU search depth and use CPU filter during task wake up | Chen Yu, Yun Wu | 24m |
Two kernel changes target wasted idle-CPU scanning and cross-CPU wakeups: a merged scan-depth limiter (srs) and a CPU idle-mask filter that updates at core… | ||
| Linux Kernel Scheduling and split-LLC architectures: Overview, Ch... | Gautham R. Shenoy, Prateek Nayak | 20m |
Measurements on split-LLC AMD EPYC systems show concrete misplacements: SCHbench tail latency becomes up to 2.5× worse when messenger and workers land on… | ||
| Latency hints for CFS task | Vincent Guittot | 28m |
Patch adds a latency hint per sched_entity that biases CFS vruntime comparisons so wakeups within a configurable window can preempt, keeping fairness by… | ||
| Latency hints for CFS task | Vincent Guittot | 40m |
Proposal adds a new task class field (populated from Intel Thread Director) and uses it as a tie‑breaker in the idle load balancer so CFS prefers the runqueue… | ||
| Bringing Energy-Aware Scheduling to x86 | Len Brown, Ricardo Neri | 08m |
Proposal adds a vector-specific disable API for x86 softirqs that lets code disable or enable individual software vectors instead of all softirqs, and… | ||
| rtla: what is next? | Daniel Bristot de Oliveira | 09m |
rtla provides a usable interface for kernel latency tracers and already ships a timerlat tracer that measures IRQ and thread latency (similar to cyclictest)… | ||
| rtla osnoise: what is missing? | Daniel Bristot de Oliveira | 28m |
An rtla/osnoise tracer runs a per-CPU busy-loop tracer that detects latency spikes by comparing time reads against a threshold, then correlates each spike with… | ||
| CPU isolation vs jailbreaking IPIs | Valentin Schneider | 39m |
Tracing shows isolated CPUs still receive disruptive IPIs caused by a few concrete kernel behaviors: a rapidly flipping static key from ntpd socket… | ||
| Make RCU do less (and disturb CPUs less)! | Joel Fernandes, Rushikesh Kadam, Uladzislau Rezki | 35m |
RCU activity keeps timers awake and prevents deep CPU idle, with graphics FDs queuing callbacks every ~16 ms and single-callback wakeups causing wasted… | ||
| Isolation aware smp_call_function/queue_work_on APIs | Marcelo Tosatti | 32m |
Proposal introduces a new CPU mask block_interference_cpu_mask and fail variants of smp_call_function/queue_work_on-style APIs that return -EIO when a target… | ||
| CPU isolation tuning through cpuset | Frédéric Weisbecker | 25m |
A runtime interface exposes the RCU callback offload mask so isolation moves from boot-only to adjustable via CPU sets; the prototype is four patches (work… | ||
| Simple KernelCI Labs with Labgrid | Jan Lübbe | 18m |
Hardware control stack Labgrid drives ~150 ARM boards via YAML-configured resources (serial, USB fastboot, network, GPIO) and layered Python drivers; a… | ||
| How to introduce KUnit to physical... | Isabella Basso, Magali Lemes, Maíra Canal, Tales da Aparecida | 19m |
Describes adding KUnit to physical DRM drivers by converting existing driver tests and running them on donated GPUs; team converts many CASE-OF tests, lands… | ||
| KUnit: Function Redirection and More | Brendan Higgins, David Gow | 18m |
KUnit now implements function redirection with two backends: static stubbing inserts a macro at a function head that at test runtime checks and calls a… | ||
| The emerging of the virtual QA team for Linux kernel | Philip Li | 21m |
A proposal for a virtual QA team that stitches cloud-hosted CI, regression reports and per-patch robots into a working loop: Zodi CI provides build testing… | ||
| Designing UAPI for Fuzz-ability | Dmitry Vyukov | 24m |
Kernel fuzzing relies on concrete, machine-readable UAPI patterns: sisbot dashboard shows per-file coverage so you can see where fuzzers stall; subsystems that… | ||
| Making syzbot reports more developer-friendly | Aleksandr Nogikh | 16m |
syzbot runs continuous fuzzing across many trees and sends ~1–1.5k bug reports per year, now managing 53% reproducible cases (plus ~6% from msan-style… | ||
| Checking your work: Linux kernel testing and CI | David Carl Vernet | 19m |
Kselftest stores suites as simple make entries with test_progs and test_gen_progs, builds an install directory and emits a runnable test runner that produces… | ||
| Integrating testing with maintainer flows | Mark Brown, Veronika Kabatova | 30m |
Argues for a single, parseable test output so CI can run and index results by SHA1, already implemented as a git-indexed CI with a git-log view of test… | ||
| TrenchBoot Update | Daniel Smith | 32m |
Progress update on TrenchBoot: a standalone DL stub binary and a secure launch resource table (SLRT) TLV format are being added so EFI stub can call back to… | ||
| Remote Attestation of IoT devices using a discrete TPM 2.0 | Dimitar Tomov, Svetlozar Kalchev | 29m |
A working remote‑attestation pipeline for constrained IoT devices uses a discrete TPM 2.0 as root of trust, enrolls chips by EK certificate, and publishes code… | ||
| Kernel TEE subsystem evolution | Sumit Garg | 39m |
Kernel TEE support now ships mainline with OP-TEE and upstream AMD drivers and early work toward Qualcomm, moving from reserved shared memory to registered… | ||
| Secure Boot auto enrollment | vincent dagonneau | 27m |
Systemd adds an auto-enroll PK/KEK/DB via ESP feature that writes UEFI secure-boot variables on first boot and flips firmware from setup to secure mode… | ||
| Secure bootloader for Confidential Computing | Ken Lu, Jiewen Yao | 28m |
Detailed chain-of-trust and attestation mechanics for Intel TDX: virtual firmware (OVMF or TD shim) records measurements into dedicated registers and emits a… | ||
| Sandboxing/Containerizing alternatives to Snap fo... | Michael Sweet, Till Kamppeter, Valentin Viennot | 22m |
Claim: Ubuntu produces tiny application-focused container images by slicing Debian packages and installing only needed files, yielding 5 MB images for the .NET… | ||
| Documentation for OpenPrinting projects | Till Kamppeter, Aveek Basu | 33m |
Focuses on automating developer reference docs with codeDoc and GitHub‑flavored Markdown to emit HTML, ePub and man pages, using Doxygen/Oxygen or Sphinx where… | ||
| Testing and CI for OpenPrinting projects | Michael Sweet, Till Kamppeter | 33m |
Automated CI runs on every commit via GitHub Actions, building CUPS, PAPPL and cups-filters across x86 and native Windows, executing ./configure; make; make… | ||
| CUPS 2.5 and 3.0 Development | Michael Sweet | 54m |
CUPS plans a CUPS 2.5 beta rollout in March to add OAuth support and centralized localization, with OAuth APIs present in 2.4x but no default UI yet and… | ||
| Experiences implementing zonefs support in ZenFS | Jorgen Hansen | 18m |
ZenFS gains ZoneFS support via a new device URI and a refactored zone-management layer with pluggable backends, converts each read/write from LBA→zone offset… | ||
| Btrfs RAID on zoned devices | Johannes Thumshirn | 23m |
Btrfs gains a prototype for declustered parity that targets zoned devices by distributing extents so rebuilds read far fewer drives; data uses zoned append… | ||
| Zonefs: Features Roadmap | Damien Le Moal | 25m |
Zonefs exposes each ZNS zone as an append‑only file and already fixes a read‑ahead infinite loop and enforces device limits via sysfs. Planned changes include… | ||
| Supporting non-power of 2 zoned devices | Pankaj Raghav | 27m |
Adds support for zoned devices whose usable blocks per zone are not powers of two by introducing a device‑mapper target that emulates power-of-two zones so… | ||
| Object caching on Zoned Storage | Hans Holmberg | 20m |
Proposes using Zoned Namespaces to lower write amplification for SSD caches by map large objects to zones and doing zone resets before reuse; experiments show… | ||
| Improving data placement for Zoned Linux File systems | Hans Holmberg | 23m |
Builds a zoned-device-aware file layout (zenfs-style) that separates files by lifetime and writes to zone-aligned regions, integrates with RocksDB integration… | ||
| SSDFS: ZNS SSD ready file system with zero GC overhead | Viacheslav Dubeyko | 24m |
Claims a ZNS-aware SSDFS that achieves zero GC overhead by organizing storage into segments with per-segment mapping tables and bitmaped compaction… | ||
| A zone-aware cache system for distributed databases | Kuankuan Guo | 19m |
Built a zone-aware local cache called zoom store that partitions SSD RBAs into zones and zone-groups, writes data and metadata separately, and uses… | ||
| Zoned MC Conference Kick Off | Adam Manzanares, Matias Bjørling | 03m |
Zone storage is alive and shipping: ZNS and SMR drives have kernel support, NVMe block-device patches are upstream, and device-mapper plus filesystem… | ||
| RISC-V ftrace: working with preemption | Tao Chiu | 32m |
RISC-V ftrace currently patches a reserved area at each function (usually reserve 16 bytes per function) using a stop-the-world stop_machine approach; enabling… | ||
| CXL 2.0+ Emulation With QEMU Status, requirements and roadmap. | Jonathan Cameron | 28m |
QEMU now emulates CXL 2.0+ with type 3 devices, root ports and switches, host physical address window support and enough logic to boot interleaved persistent… | ||
| Linux plumbing of CXL error reporting | Robert Richter, Yazen Ghannam | 31m |
Explains how CXL memory errors map to existing Linux mechanisms and what is actually missing: it distinguishes protocol vs component errors and shows protocol… | ||
| CXL hotplug: spec to reality | PJ (Peter) Waskiewicz | 23m |
CXL 1.1 lacks hotplug, so FPGA-based endpoints that reprogram the bitstream rely on PCIe hot unplug ~30s or full reboots (minutes) to avoid host-link… | ||
| Design and implementation of Autocaching for CXLSSD | Heekwon Park | 31m |
Autocaching inserts device-backed folios into the file map so the VFS can choose between page cache and device pages per allocation; it implements dynamic… | ||
| CXL and confidential computing | Jérôme Glisse | 28m |
CXL exposes HPA physical addresses so devices can access any host memory unless access control is implemented per device, and many memory modules ship with ARM… | ||
| CXL Dynamic Capacity MM | Jonathan Cameron, Navneet Singh | 30m |
CXL 3.0 adds Dynamic Capacity Devices that present memory as fixed-size blocks grouped into 1 2 or 8 DCT regions which the host maps via CDT/HDM decoders and… | ||
| CXL Type-3 device discovery, configuration in firmware and prepare ACPI tables... | Sayanta Pattanayak | 28m |
Firmware builds ACPI tables so the kernel sees CXL Type‑3 memory as nodes: ACPI HMAT/SRAT/CEDT prepared and per‑host‑bridge CHB objects with UIDs linking host… | ||
| CXL MC Welcome and Kickoff | Adam Manzanares, Dan Williams | 03m |
Kickoff states that CXL is coalescing industry support and enabling cache-coherent memory and flexible memory topologies for attaching memory and accelerators… | ||
| Closing session | Christian Brauner | 01m |
Conference closes with thanks to everyone who presented, attended in person and remotely, and helped run sessions; organizers are publicly thanked and the room… | ||
| Bringing up FUSE mounts C/R support | Alexander Mikhalitsyn | 32m |
Adds checkpoint/restore for FUSE by building a proof‑of‑concept that spawns a fake FUSE daemon, performs the mount, stores the resulting device FD in fdstore… | ||
| Restartable Sequences: Scaling Per-Core Shared Memory Use in Containers | Mathieu Desnoyers | 22m |
Proposal extends restartable sequences with a new per-memory-space vcpu ID field so shared memory users allocate arrays sized to container-visible CPUs instead… | ||
| Unprivileged CRIU | Younes Manton | 24m |
Goal is running CRIU without root by using specific capabilities rather than full root; original patch series lands from 2020 and a rebased PR appears a few… | ||
| cgroup rstat's advanced adoption | Michal Koutný | 23m |
Describes how the cgroup rstat recursive stats use a per‑CPU update tree and global flushes that aggregate per‑CPU replicas; claims adding many memcg counters… | ||
| How can we make procfs safe? | Aleksa Sarai | 34m |
Claim: use the new mount API to make procfs-safe resolution for container setup by combining open_tree clone to create a detached anonymous mount, verification… | ||
| Restoring process trees with child-sub-reapers, nested pid-namespaces and inheri... | Pavel Tikhomirov | 30m |
Restores serialized process trees by actually reconstructing session leaders and reparenting using helper processes rather than guessing history, handling… | ||
| Tracer namespaces | Mathieu Desnoyers | 25m |
Proposes attaching per-namespace ring buffers so each container namespace gets its own ring and events are serialized into buffers up the hierarchy via… | ||
| Opening session | Stephane Graber | 02m |
Mostly logistics and welcome notes covering conference rules and session flow not technical content The session reviews the anti harassment policy, microphone… | ||
| Dynamic Energy Model to handle leakage power | Lukasz Luba | 16m |
A runtime-swappable energy model is implemented for EAS using an RCU pointer so a vendor kernel module can replace per-frequency power and cost arrays without… | ||
| (Impact of) Recent CPU topology changes | Dietmar Eggemann, Ionela Voinescu | 15m |
Recent CPU topology parsing changes fix DT cluster/socket misinterpretation and improve last‑level cache detection via device tree/ACPI/sysfs, so… | ||
| io_uring in Android | Akilesh Kailash | 15m |
Android uses io_uring with Q depth 32 to cut snapshot-merge CPU from ~50–55% of operation time to about 10–12%, and Pixel 6 sees an incremental OTA (≈200 MB)… | ||
| MGLRU results on Android | Kalesh Singh | 16m |
Evaluation of MGLRU on Android uses a Pixel 6 Pro (12 GB RAM, 3 GB zram) and a 30‑app cycle test run for ~200 iterations. Results show 6.6% overall app‑launch… | ||
| EROFS as a replacement for EXT4 and Squashfs | David Anderson | 11m |
EROFS is a read-only filesystem (in mainline since Linux 5.4) that supports deduplication and LZ4 and uses in-place decompression to avoid extra buffers… | ||
| eBPF-based FUSE | Paul Lawrence | 16m |
Implements a stacking file system that attaches a potential backing inode and a BPF program to each FUSE node so requests go through BPF pre/post filters… | ||
| Cuttlefish and Kernel Dev | Ram Muthiah | 09m |
A virtual Android device for pre‑silicon kernel development that is now virtio compliance with support for qemu, cross_vm (Rust), gem5 and Calculus VMMs… | ||
| Virtualization in Android | David Brazdil, Serban Constantinescu | 16m |
Android builds a protected VM layer using pkvm (ARM64 KVM protected mode) and a Rust VMM (cross VM) to run tiny Android guests (a base distro called… | ||
| fw_devlink and parallelization updates | Saravana Kannan | 14m |
Firmware devlink now offers a kernel command line driver_async_probe= (star for default async plus comma-separated denylist), a deferred-probe timeout that… | ||
| STG for ABI monitoring | Giuliano Procida | 12m |
STG models ABIs as labeled graphs and claims a linear-time graph comparison that matches nodes by local equivalence, follows labeled edges, and stops on… | ||
| Hermetic builds with Bazel | Matthias Männich | 16m |
Replaces a sprawling build-sh script with Bazel-backed “cliff,” enforcing a hermetic toolchain and sandboxed dependencies so builds are reproducible across… | ||
| Technical debt | Matthias Männich | 08m |
Android kernel work uses an upstream-first GKI policy and an Android Mainline tracking branch that rebases a maintained patch series onto GregKH merges… | ||
| GKI Experience | Elliot Berman | 14m |
Qualcomm moves from GKI 1.0 test-only to shipping full GKI kernels, adopting a mixed build workflow that keeps a GKI boot image while building vendor modules… | ||
| Interrupt Security for AMD SEV-SNP | Ashish Kalra | 38m |
AMD SEV‑SNP adds restricted interrupt injection and an alternate injection mode: restricted replaces VM interrupt queuing with a single benign VMCB vector… | ||
| Testing Intel TDX functionality with new set of self tests | Sagi Shahar | 18m |
Google's TDX self-test framework runs coordinated host and guest code using the JCI guest‑host channel and TD calls to exercise CPUID, MMIO, MSR and IO paths… | ||
| Identifying and Eliminating Contention from Booting Concurrent SNP VMs | Jacky Li, Marc Orr | 19m |
Concurrent AMD SEV‑SNP guests stall on RMP updates because change_page_attr serializes behind a global CPA lock; removing that lock cuts boot-time contention… | ||
| The elephants in the confidential room: Attestation and verification | Samuel Ortiz | 24m |
Confidential Containers exposes that attestation is fragmented and vendor‑specific so a workload must implement multiple custom clients to get a decryption… | ||
| Hardening Linux guest kernel for CC | Elena Reshetova | 20m |
Argues that guest kernels must treat host-exposed reads as hostile, points to many MMIO/MSR/PCIe read sites in the 5.11 kernel and dozens of drivers doing… | ||
| Using DICE Attestation for SEV and SNP Hardware Rooted Attestation | Peter Gonda | 22m |
Proposal uses DICE to give confidential VMs a cryptographic workload identity without a TPM by chaining per-layer device ID key pairs into a CDI chain and… | ||
| Unmapped Private Memory for Confidential Guests | Michael Roth | 38m |
Proposes kernel-side infrastructure to back confidential guests with pages that user space cannot access, implemented as a private mem slot in KVM using a… | ||
| Upstream & Guest Distro support for Confidential Compute | Jianxiong Gao | 20m |
Confidential VM features arrive incrementally and many guest images lack the matching firmware/kernel support, which causes silent failures later; propose a… | ||
| Rust in the Kernel (via eBPF) | Dave Tucker, Michal Rostecki | 36m |
A Rust eBPF toolchain is already usable: Aya plus a custom BPF Linker compiles Rust crates to a single eBPF object, shares a common crate between userland and… | ||
| The Integration of Rust with Kernel Testing Service | Yujie Liu | 24m |
0.ci (LKP) integrates the Rust toolchain and bindgen into automated kernel testing, adds adaptive version switching so bisection can use different rustc… | ||
| Linux Rust NVMe Driver Status Update | Andreas Hindborg | 24m |
A Rust NVMe driver for PCI devices is implemented and benchmarked with fio in QEMU/KVM on a 16‑core EPYC testbed against the Linux C driver using SN840 and… | ||
| Rust for Linux: Status Update | Miguel Ojeda, Wedson Almeida Filho | 24m |
Rust for Linux moves from a large prototype to a focused v9 that is trimmed to ~500 lines and reduces the surface from ~40k to ~13k lines, aiming to land… | ||
| rustc_codegen_gcc: A gcc codegen for the Rust compiler | Antoni Boucher | 28m |
rustc_codegen_gcc plugs libgccjit into rustc and is now merged into the main Rust repo; it can compile the Rust compiler with GCC codegen and the produced… | ||
| Rust GCC Front-end | Philip Herron, David Faust | 27m |
A full Rust front end for GCC that parses, macro-expands, type-checks and lowers Rust into GCC trees and reuses libcore/libstd is under active development… | ||
| The slab allocators of past, present, and future | Vlastimil Babka | 25m |
A concise history of Linux slab allocators traces slub default since 2007, the original slab, and slop for tiny systems, explaining why three implementations… | ||
| Low-overhead memory allocation tracking | Kent Overstreet, Suren Baghdasaryan | 24m |
Static code-tagging allocates per-callsite structs in a special ELF section and instruments slab and page allocators to increment/decrement counters, storing… | ||
| Preserving guest memory across kexec | James Gowans | 22m |
Proposes carving a large persistent PFN pool out of host RAM, mounting a new muse filesystem backed by that memory, and letting a user-space control process… | ||
| Multi-Gen LRU: Current Status & Next Steps | Jesse Barnes, Rom Lemarchand | 28m |
Patch set 14 is upstream-ready and expected around 6.1 with eight downstream kernels and 5.15 backports for Raspberry Pi and WSL2; mGLRU already defaults on… | ||
| Memory tiering | Jérôme Glisse | 30m |
Memory tiering treats cold pages by clearing the access bit and rechecking after about a minute, which reliably finds long-unused pages, while hot-page… | ||
| Scalability solutions for the mmap_lock - Maple Tree and per-VMA locks | Liam R. Howlett, Suren Baghdasaryan, Michel Lespinasse | 24m |
Replaces the three VMA tracking structures with a single maple tree to enable lockless VMA lookups (not RCU-safe yet) and introduces per-VMA seqcounters so a… | ||
| Restricting access to IPP printers with OAuth2 framework | Piotr Pawliczek | 39m |
Defines an OAuth2-based flow that adds a token exchange step so a generic IPP client obtains a short-lived endpoint access token per printer rather than… | ||
| Tuning Linux TCP for data-center networks | Yuchung Cheng | 31m |
Data-center tuning focuses on keeping queues on hosts not switches: enable ECN-aware congestion control (e.g., ECTCP or BBRv2), disable idle cwnd shrink, use… | ||
| Unified structure for thermal zone device registration | Rui Zhang | 25m |
Proposes replacing the long, growing thermal_zone_device_register argument list with a single-pointer parameter that points to an extensible parameter… | ||
| Securely booting confidential VMs with encrypting disk | Dov Murik, Tobin Feldman-Fitzthum | 18m |
Compares concrete workflows for SEV, SEV-ES, SEV-SNP and TDX: current encrypted-qcow has the VMM hold keys so it is not confidential; one option uses embedded… | ||
| Unmapped Private Memory for Confidential Guests | Michael Roth, Chow Ping | 20m |
Unmapped Private Memory (UPM) introduces a new private mem slot backed by a memfd-style MFD so KVM can program nested page tables from private guest pages… | ||
| Closing the BPF map permission loophole | Lorenz Bauer | 32m |
A bug allows a process with CAP_BPF bypass to modify maps opened read-only: a loaded BPF program can call map_update_elem with a read-only fd, pinning a… | ||
| OPENED Tool for Managing eBPF Heterogeneity | Sandeep Ed | 33m |
Prototype extracts a developer-selected eBPF function from large repos using CodeQuery (cscope/ctags), TXL annotations and Python to dump a minimal… | ||
| Pressure feedback for LRU map types | Joe Stringer | 31m |
A production upgrade exposes packets dropped while a CT map reports CT map insertion failure even though the LRU should evict entries; investigation finds… | ||
| Reusing the BPF CI | Quentin Monnet | 32m |
The CI automatically turns mailing-list patches into GitHub pull requests, Patchwork-to-PR conversion, and injects a middle commit that copies files from a… | ||
| The revival of the learning-sync bridgeport flag | Alexandra Winter | 28m |
A converged interface merges an external Ethernet segment with a high‑performance in‑machine hypersockets fabric by running a local Linux bridge, using… | ||
| More CO-RE? Taming the effects of compiler optimizations on BPF tracing | Alan Maguire | 32m |
CO-RE helps BPF programs run across kernels but compiler optimizations hide about 7,000 of ~56,000 kernel symbols from BTF, breaking fentry/fexit tracing for… | ||
| nothing matches | ||