Oh neat, a post I actually know something about! I worked a lot on userfaultfd performance for GCE's live migration post-copy a couple years ago. Or more specifically, I worked on mechanisms to avoid it entirely- due to lock contention in the kennel, faults become veeeerry slow as the number of vcpus scales, and as it happens VMs these days can have a lot of vcpus
> Userfaultfd is a Linux mechanism, available since kernel 4.3, with additional event features like non-cooperative mode and fork/remap/remove tracking added in 4.11, that lets a userspace thread intercept and handle page faults.
Is this the same feature Windows has had forever, or is there more to it?
Is this the same feature Windows has had forever, or is there more to it?