Postcopy Preemption
summary
Introduces QEMU postcopy preemption, which adds a dedicated urgent-page channel, a fast page-resolve thread and per-channel page ownership so urgent requests interrupt background transfers; requires both source and destination to enable and is not compatible with vanilla postcopy. Implements buffering changes to avoid blocking on whole huge-page copies (discussion includes hugetlbfs mapping granularity) and leverages postcopy recovery. Shows measurements: vanilla postcopy averages ~12 ms per page request, preemption reduces that to ~229 µs (≈50×), part of the work lands in QEMU 7.1 and an RFC covers remaining patches.
AI-written summary · about
chapters (13)
- 0:00OUTLINES
- 0:55WHAT IS POSTCOPY?
- 1:44WHAT IS POSTCOPY PREEMPTION?
- 3:50LIVE MIGRATION (PRECOPY)
- 8:35POSTCOPY LIMITATIONS
- 12:41BACKGROUND PAGE FLUSH
- 15:37CHANNEL SEPARATION
- 16:29HUGE PAGE GRANULE
- 19:04HUGE PAGE PREEMPTIONS
- 19:54MIGRATION THREAD ITSELF!
- 22:17???
- 26:34PERFORMANCE NUMBERS
- 27:53DISTRIBUTIONS OF LATENCIES
related talks
10mTowards a More Efficiently Synchronization in KVM
15mKVM Live Upgrade with Properly Handling of Passthrough Devices
22mDevice Keepalive State for Local Live Migration and VMM Fast Restart
24mSupport for Fast and Reliable VMM Live Upgrades in Libvirt
11mFetchBPF: Customizable Prefetching Policies in Linux with eBPF
47mReal-Time Linux: What Is N...
28mHow Preemption Works in Nomad
17mProtego: Overload Control for Applications with Unpredictable Lock Contention
