Re: CFT: nested page table integration with amd64/pmap
On 23/08/2013 23:57, Peter Grehan wrote: I always wondered about virtualization environments which have pageable guest memory - how does the guest kernel handle situations where it really needs non-pageable memory? Does is simply not care because for it the memory access looks just like it isn't paged but is simply very, very slow? Yes - from the guest's point of view, what it thinks is physical memory appears wired. What about time-sensitive situations (like the originally mentioned PCI-passthrough)? PCI passthru is a special case since the h/w requires that the target of a DMA transfer is present - there is currently no way for the IOMMU to generate the equivalent of page faults. So, for PCI passthru, all of guest memory has to be wired host memory. For time-sensitive situations, there's not a lot of options other than forcing guest memory to be wired, since there isn't visibility into the host without having o/s-specific tools that could communicate this information to the hypervisor. Ok, that is how I understood it also, but I thought that maybe there was some way of telling which guest memory belongs to the kernel and only wire those pages. signature.asc Description: OpenPGP digital signature
Re: CFT: nested page table integration with amd64/pmap
For time-sensitive situations, there's not a lot of options other than forcing guest memory to be wired, since there isn't visibility into the host without having o/s-specific tools that could communicate this information to the hypervisor. Ok, that is how I understood it also, but I thought that maybe there was some way of telling which guest memory belongs to the kernel and only wire those pages. Not in a general way. That's where you need a hypervisor-specific module in the guest to pass on this info e.g. vmware-tools. later, Peter. ___ freebsd-virtualization@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-virtualization To unsubscribe, send any mail to freebsd-virtualization-unsubscr...@freebsd.org
Re: CFT: nested page table integration with amd64/pmap
I always wondered about virtualization environments which have pageable guest memory - how does the guest kernel handle situations where it really needs non-pageable memory? Does is simply not care because for it the memory access looks just like it isn't paged but is simply very, very slow? Yes - from the guest's point of view, what it thinks is physical memory appears wired. What about time-sensitive situations (like the originally mentioned PCI-passthrough)? PCI passthru is a special case since the h/w requires that the target of a DMA transfer is present - there is currently no way for the IOMMU to generate the equivalent of page faults. So, for PCI passthru, all of guest memory has to be wired host memory. For time-sensitive situations, there's not a lot of options other than forcing guest memory to be wired, since there isn't visibility into the host without having o/s-specific tools that could communicate this information to the hypervisor. later, Peter. ___ freebsd-virtualization@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-virtualization To unsubscribe, send any mail to freebsd-virtualization-unsubscr...@freebsd.org