Re: [PATCH] slow_map: minor improvements to ROM BAR handling

Avi Kivity
2009-12-22T15:47:36Z

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