Re: [PATCH 02/26] KVM: PPC: Convert MSR to shared page

Avi Kivity
2010-06-27T09:50:29Z

On 06/27/2010 12:38 PM, Alexander Graf wrote:
>
> Am 27.06.2010 um 10:16 schrieb Avi Kivity <avi-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>:
>
>> On 06/26/2010 02:24 AM, Alexander Graf wrote:
>>> One of the most obvious registers to share with the guest directly
>>> is the
>>> MSR. The MSR contains the "interrupts enabled" flag which the guest
>>> has to
>>> toggle in critical sections.
>>>
>>> So in order to bring the overhead of interrupt en- and disabling
>>> down, let's
>>> put msr into the shared page. Keep in mind that even though you can
>>> fully read
>>> its contents, writing to it doesn't always update all state. There
>>> are a few
>>> safe fields that don't require hypervisor interaction. See the guest
>>> implementation that follows later for reference.
>>>
>>
>>
>> You mean, see the documentation for reference.
>>
>> It should be possible to write the guest code looking only at the
>> documentation.
>
> *shrug* since we're writing open source I don't mind telling people to
> read code for a reference implemenration.

It's impossible to infer from the source what's a guaranteed part of the
interface and what is just an implementation artifact. So people rely
on implementation artifacts (or even bugs) and that reduces our ability
to change things.

> If well written, that's more comprehensible than documentation anyways
> :).

If the documentation is poorly written, yes.

--
error compiling committee.c: too many arguments to function