> 1. The control of gCR3 and hCR3 needs kernel access. While they can > be set with a device module as what is done in kvm. Trapping into the > kernel every time gCR3 is reseted might be too expensive.
Why the control of gCR3 needs kernel access? Isn't gCR3 just a field of the CPUX86State? QEMU should have the control of it. Or you mean the trapping thing? > 2. After setting the gCR3 and hCR3. whatever memory references fall > within the guest memory will be done correctly. However, memory > references done by the host will be broken. Therefore, when we load > the from the CPUstates, call to helpers for exits from the code cache, > we need to change the paging mechanism back to non-nested. can this be > done ? how expensive will this be ? Why the memeory references done by the host will be broken? Regards, chenwj -- Wei-Ren Chen (陳韋任) Computer Systems Lab, Institute of Information Science, Academia Sinica, Taiwan (R.O.C.) Tel:886-2-2788-3799 #1667 Homepage: http://people.cs.nctu.edu.tw/~chenwj