Date: Wed, 03 Apr 2013 10:34:35 -0600 From: Peter Grehan <grehan@freebsd.org> To: Takuya ASADA <syuu@dokukino.com> Cc: "freebsd-virtualization@freebsd.org" <freebsd-virtualization@freebsd.org> Subject: Re: suspend/resume on BHyVe Message-ID: <515C5A1B.5070903@freebsd.org> In-Reply-To: <CALG4x-UF-G0FxC0sbR3uEUS4xMcaaNOtRpHF=RP1r4RpaAHprw@mail.gmail.com> References: <CAJ-Y7VcZ=EbAesb%2B8Pup1YsSE_yaM_345KZjwibjaC=GMo0xfA@mail.gmail.com> <CAFgRE9FqqJSTrtTA4PmdSsCdbEGi57jHOLZH0EkK83yJ3HqYpQ@mail.gmail.com> <CALG4x-Wrhtq000-5RuVkdmRH%2BcjDvg-vGLaUzxWi9k2o5zEmHw@mail.gmail.com> <CAJ-Y7Vc6_EEnCTx00q3XWFYkMiUrPSziV8d403ah-KPPFnbYiw@mail.gmail.com> <CALG4x-UF-G0FxC0sbR3uEUS4xMcaaNOtRpHF=RP1r4RpaAHprw@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
> 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. later, Peter.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?515C5A1B.5070903>