Messages in this thread | | | From | Eric Lacombe <> | Subject | [x86] - technical questions about HV implementation on Intel VT | Date | Mon, 20 Oct 2008 19:27:33 +0200 |
| |
Hello,
I worked on a particular hypervisor, that just put in a VM the currently running kernel. But I faced some problems and I would like to know some good practices in order to debug the module I develop.
When the module put the current kernel in "vmx non-root mode", some conditions irremediably trigger a VM-Exit (with the processor I use, loading cr3 always trigger a vmexit). And here comes my problem. How can I reliably get information (by way of printk) when my hypervisor screw something up, and crash the machine with lots of debug info that scroll quickly on the screen, just before freezing the machine.
In fact, It seems that in some situations the machine "loop on page faults". Let me depict the scenario: After a vmxlaunch, the host hand over the cpu to the guest then a vmexit occurs. Thus, the guest hand over to the host. the host checks some things and issue a vmxresume, and.. a vmexit occurs again, etc. etc.
So, when the host take control for the first time after the first vmexit, I would like the host to print informations and to "die correctly", so as I could read these information on the screen (ie, without being polluted with lots of debug messages that scroll on the screen).
Note: I already have some vmexits due to invalid guest state during vmxlaunch, but it seems (because my trivial printings for those situations do not show again) I fully repaired those problems. Now there is a lot of debug info quickly scrolling on the screen before the system crashes :/
Thanks in advance for your answers.
Eric
| |