~/talk

Changing Paravirt Lock-ops for a Changing World

Talkat KVM Forum 2020 · 2020-10-28..10-30· [rust]
links:none on file
slides:none on file

Kernel can switch between native and paravirt spinlock ops at runtime by patching call sites with a single-byte breakpoint-based 0xCC patching that funnels execution into a handler that emulates old or new ops. v1 uses a stop-the-world approach that disables interrupts and stalls vCPUs (risking NMI deadlocks). v2 introduces site-local barriers and a global barrier counting slow-path lock ops (via breakpoint/NMI handler) so transition waits until no active queued slow-path locks before flipping to new ops.

AI-written summary · about

  1. 0:00Introducción
  2. 0:52Guests should be more dynamic
  3. 2:37pv_lock_ops state-machine Queued spinlocks are based on MCS locks
  4. 4:34Why don't we just use paravirt locks all the time
  5. 7:56What does switching pv_lock_ops involve? cont
  6. 8:26Active users while we are patching
  7. 10:32Mechanism: INT3
  8. 12:41V1: approach
  9. 14:59V1: state-machine
  10. 19:16V2 design: global barrier
  11. 23:04V2 design: more on counting
  12. 25:24Show me the code
  13. 25:41Questions?
~/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.