Re: Use CPUID to communicate with the hypervisor.

From: H. Peter Anvin
Date: Mon Sep 29 2008 - 17:54:23 EST


Jeremy Fitzhardinge wrote:

Unless there is a central authority assigning these, "we" can do all
we want, enough people will not pay attention.

Basically, there needs to be a standards document that describes the
architecture, *and* needs to either have universal buy-in with all the
vendors or imposed by an authority with enough clout to do so (Intel
might.)

I think using fixed offsets is unwise, since there's already contention
for the same leaves. Making sure that each block of leaves (where a
block is 16, 256 or some other number of leaves) is self-describing via
ABI signatures is the only sane way to go. There's still the issue of
assigning ABI signatures to vendors, but that's 1) less of an issue, and
2) can be self-assigned with very low likelihood of collision. That way
a guest can scan that region of leaf space for ABI signatures it
understand, and can pick and choose among what it finds (but not mix and
match - that sounds like a course for disaster).

If you can't mix and match, there is no point, since very likely all hypervisors will have at least some unique information.

If we use such a scheme, we can 1) avoid any existing users of that
space, 2) cleanly delimit a hypervisor-agnostic ABI portion of the leaf
space, and 3) allow hypervisors to implement multiple ABIs at once.

Yes, see my previous "half-baked" sketch.

-hpa

--
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/