~/talk

Improving kexec boot time

Talkat Linux Plumbers Conference 2023 · 2023-11-13..11-15· [web-performance]
links:none on file
slides:none on file

Kernel boot time drops from about 4s to ~1s in tests by enabling deferred struct page init and applying parallel SMP boot so secondary CPUs bring themselves online together; HugeTLB tail-page work (HVO) avoids initializing ~260k identical tail struct pages per 1GiB hugepage and recovers ~3s, PCI-probe filtering saves ~120ms (~8%), and disabling purgatory saves ~200ms (~20% of downtime); remaining hotspots are ~300ms of ACPI and ~100ms of necessary struct-page init, leaving VM downtime around 1.5–2s.

AI-written summary · about

  1. 0:00Introduction to boot time
  2. 1:04Why improve kernel boot time
  3. 4:30Live update vs live migration
  4. 6:15Measuring downtime and boot time
  5. 7:41Initial boot time breakdown
  6. 8:22Optimizing struct page initialization
  7. 9:03Understanding SMP boot process
  8. 10:29Parallelizing BP kick AP stage
  9. 11:32Results of parallel SMP boots
  10. 12:14Huge pages and boot time impact
  11. 13:15Huge page VM map optimization
  12. 14:20Final downtime and remaining challenges
  13. 15:21Purgatory and integrity checks
  14. 17:06PCI device filtering optimization
  15. 17:48ACPI operations and remaining bottlenecks
  16. 19:38Future work and upstream discussions
  17. 21:01ACPI CPU object initialization
  18. 22:04PCI state preservation across kexec
  19. 24:11Kexec boot methods and purgatory
  20. 25:57Struct page initialization details
  21. 27:03Lazy struct page initialization
  22. 28:07Asynchronous KVM and VCPU handling
  23. 30:13Passing state between kernels
  24. 34:10Standardized state passing framework
  25. 36:41Driver serialization and PCI challenges
  26. 37:22Keeping guest running during kexec
  27. 39:08EPT and memory slot challenges
  28. 40:10PKRAM and memory fragmentation
  29. 43:30Summary and closing remarks
~/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.