Re: [RFC] CPUID usage for interaction between Hypervisors and Linux.

From: Jeremy Fitzhardinge
Date: Tue Oct 07 2008 - 19:41:36 EST


Nakajima, Jun wrote:
On 10/3/2008 5:35:39 PM, H. Peter Anvin wrote:
Nakajima, Jun wrote:
What's the significance of supporting multiple interfaces to the
same guest simultaneously, i.e. _runtime_? We don't want the guests
to run on such a literarily Frankenstein machine. And practically,
such testing/debugging would be good only for Halloween :-).

By that notion, EVERY CPU currently shipped is a "Frankenstein" CPU,
since at very least they export Intel-derived and AMD-derived interfaces.
This is in other words, a ridiculous claim.

The big difference here is that you could create a VM at runtime (by combining the existing interfaces) that did not exist before (or was not tested before). For example, a hypervisor could show hyper-v, osx-v (if any), linux-v, etc., and a guest could create a VM with hyper-v MMU, osx-v interrupt handling, Linux-v timer, etc. And such combinations/variations can grow exponentially.

That would be crazy.

Or are you suggesting that multiple interfaces be _available_ to guests at runtime but the guest chooses one of them?

Right, that's what I've been suggesting. I think hypervisors should be able to offer multiple ABIs to guests, but a guest has to commit to using one exclusively (ie, once they start to use one then the others turn themselves off, kill the domain, etc).

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