* H. Peter Anvin <h...@zytor.com> wrote:

> On 10/14/2013 11:50 PM, Ingo Molnar wrote:
> > 
> > So if anyone can implement it using huge pages, with a really fast 
> > __va() and __pa() implementation, then it might be possible. But 
> > that's a pretty major surgery on x86.
> 
> Well, we already *have* a way to deal with that for Xen (by inserting an 
> otherwise nonexistent logical level.)  I'm wondering if those interfaces 
> could be (ab)used for this as well, or if that is functionally 
> equivalent to saying that this should be done in a hypervisor.

It's not _that_ complex, and it does not need a separate security layer.

I have this distinct memory that I saw working patches that have paged all 
of the kernel's data, more than a decade ago. It was all rather 
disgusting, because those patches worked on the 4K level - but if a 2MB 
granular solution can be found in an elegant fashion then I think we could 
reconsider.

It definitely wasn't hypervisor thick. It probably needs a good hash for 
virtual address transformations, and all DMA has to be managed [these days 
we do that via the IOMMU anyway] but that's pretty much all - kernel 
virtual memory is reconfigured extremely rarely, so all that could be sped 
up for reads and mirrored per node and kept lockless, etc. etc. [Plus a 
metric ton of details.]

Thanks,

        Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to