Andrea Arcangeli wrote:
> On Tue, Apr 01, 2008 at 01:21:37PM -0500, Anthony Liguori wrote:
>   
>> return a page, not a HPA.  I haven't looked too deeply yet, but my 
>> suspicion is that to properly support mapping in VM_IO pages will require 
>> some general refactoring since we always assume that a struct page exists 
>> for any HPA.
>>     
>
> Yes, that was potentially problem for reserved _ram_ pages too, as it
> isn't guaranteed that memmap_t (old days nomenclature) will exist for
> physical addresses not defined as ram in the e820 map (to make it work
> without VT-d I have to reserve the ram in the host at the e820 map
> parsing time). If the memmap will not exist for the reserved ram
> physical range, the pfn_valid() will fail at runtime in kvm and the
> bad_page will generate a graceful emulation failure, so it's very
> safe. But once we handle direct memslots for mmio regions, the
> reserved ram will better stop depending on the memmap too.
>   

Direct memslots is quite a sledgehammer though to deal with IO pages.

You could get away with supporting reserved RAM another way though.  If 
we refactored the MMU to use hfn_t instead of struct page, you would 
then need a mechanism to mmap() reserved ram into userspace (similar to 
ioremap I guess).  In fact, you may be able to just lie and claim 
reserved ram is IO ram.

Then we could treat the reserved ram in the same way as IO ram and not 
have to introduce a new interface in KVM for mapping arbitrary regions 
of memory.

I would be interested in this sort of mechanism not for reserving low 
RAM, but for reserving high RAM.  Basically, I'd like to boot with mem= 
something and then still be able to map the higher memory in QEMU 
userspace and then create KVM guests with it.

Regards,

Anthony Liguori

-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
_______________________________________________
kvm-devel mailing list
kvm-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/kvm-devel

Reply via email to