suspend/resume on BHyVe

Peter Grehan grehan at
Wed Apr 3 16:34:49 UTC 2013

> You can dump whole struct just a binary array(don't look into it in your
> program), and get sizeof(vmxctx) via ioctl return. It should enough to
> suspend/resume.
> Then if AMD SVM mode will have different values on the structure, your
> implementation won't break.
> Does it make sense? > Peter, Neel

  I was thinking of something a bit more abstract. There shouldn't be 
any need to encode VMCS/SVM info in the save/restore state - that can be 
recreated on demand. For instance, bhyveload can pass off execution 
state to bhyve without having any knowledge of VMCS/SVM.

  You'd need to represent the entire CPU register state of the VM, 
memory, and also enough for the virtual devices to be able to resurrect 
state. Plus, there needs to be some versioning to allow suspend/resume 
between different revs of bhyve.



More information about the freebsd-virtualization mailing list