On 12/22/2009 05:41 PM, Alexander Graf wrote:
We could certainly extend emulate.c to fetch instruction bytes from
userspace. It uses ->read_std() now, so we'd need to switch to
->read_emulated() and add appropriate buffering.
I thought the policy on emulate.c was to not have a full instruction
emulator but only emulate instructions that do PT modifications or MMIO
access?
It's not a policy, just laziness. With emulate_invalid_guest_state=1 we
need many more instructions. Of course I don't want to add instructions
just for the sake of it, since they will be untested.
I'd much prefer not to run from mmio if possible - just pointing out
it's doable.
Btw, we're in the same situation with PowerPC here. The instruction
emulator is _really_ small. It only does a few MMU specific
instructions, a couple of privileged ones and MMIO accessing ones.
Plus, you have a fixed length instruction length, likely more regular
too. I imagine powerpc is load/store, so you don't have to emulate a
zillion ALU instructions?
--
error compiling committee.c: too many arguments to function
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html