TODO.nvmm revision 1.1
11.1SmaxvKnown issues in NVMM, low priority in most cases.
21.1Smaxv
31.1Smaxv====== KERNEL NVMM DRIVER ======
41.1Smaxv
51.1Smaxv * Currently you can't modunload NVMM while a VM is running, otherwise you hit
61.1Smaxv   a panic. See TODO in nvmm_fini().
71.1Smaxv
81.1Smaxv * Maybe we will want a way to return to userland when the guest TPR changes.
91.1Smaxv   On Intel that's not complicated, but on old AMD CPUs, we need to disassemble
101.1Smaxv   the instruction, and I don't like that.
111.1Smaxv
121.1Smaxv * Maybe we shouldn't modify the INT/NMI windows during event injection. The
131.1Smaxv   virtualizer is supposed to inject the event only when these windows allow
141.1Smaxv   it. (Eg Qemu does.)
151.1Smaxv
161.1Smaxv * We need a cleaner way to handle CPUID exits. It is not complicated to solve,
171.1Smaxv   but I'm still not sure which design is the cleanest.
181.1Smaxv
191.1Smaxv * Same for the MSRs.
201.1Smaxv
211.1Smaxv====== LIBNVMM ======
221.1Smaxv
231.1Smaxv * There are still a few twisted corner cases we don't handle in the instruction
241.1Smaxv   emulator. For example if the guest makes an MMIO access relative to RSP, we
251.1Smaxv   must base the GVA on %SS and not %DS. This is tiring, and in practice, no
261.1Smaxv   guest is dumb enough to perform such accesses.
271.1Smaxv
28