Re: Using EPT to map guest MMIO to host MMIO

Jan Kiszka
2011-08-05T09:08:38Z

On 2011-08-05 10:40, Cyclonus J wrote:
> On Fri, Aug 5, 2011 at 12:41 AM, Jan Kiszka <jan.kiszka@siemens.com> wrote:
>> On 2011-08-05 09:20, Cyclonus J wrote:
>>> hi,
>>>
>>> I am wondering if it is possible to map guest MMIO to host MMIO, the
>>> purpose is to reduce VM_EXIT as the page tables will be setup before
>>> MMIO accessing from guest. Here is what I have in mind:
>>
>> This is already the case if you pass through devices AND aligment&size
>> of the MMIO resource allows this.
>
> I assume here pass through means using VT-d?

...or AMD IOMMU. Yes.

> Unfortunately, I can't
> use it for my case and I need to para-virtualize guest OS as well.

Even with PV, you can't avoid VM exits if the IO access has side
effects, ie. is supposed to trigger some device activity. Or if it is
backed by some logic.

You can only avoid exits if MMIO behaves like RAM. But then it's better
to use RAM directly, like virtio but also real devices do for request data.

Again my question what device you want to optimize precisely.

Jan

--
Siemens AG, Corporate Technology, CT T DE IT 1
Corporate Competence Center Embedded Linux