Re: [PATCH] kvm, x86: Properly check whether a pfn is an MMIO or not

From: Paolo Bonzini
Date: Thu Sep 15 2016 - 02:23:00 EST




On 15/09/2016 07:54, Raslan, KarimAllah wrote:
>
>> On Jun 22, 2016, at 3:41 PM, Paolo Bonzini <pbonzini@xxxxxxxxxx> wrote:
>>
>>
>>
>> On 22/06/2016 04:34, KarimAllah Ahmed wrote:
>>> pfn_valid check is not sufficient because it only checks if a page has a struct
>>> page or not, if for example "mem=" was passed to the kernel some valid pages
>>> won't have a struct page. This means that if guests were assigned valid memory
>>> that lies after the mem= boundary it will be passed uncached to the guest no
>>> matter what the guest caching attributes are for this memory.
>>
>> How can you pass memory after the mem= boundary to the guest?
>
> Does my previous reply answer your question?

Yes, but I'm not sure it's the right way to do it. Looking at the e820
memory map seems pretty hacky.

Paolo