Jun Koi wrote:
> On 6/26/07, Dor Laor <[EMAIL PROTECTED]> wrote:
>> ...
>> +static __init struct kvm_paravirt_state *paravirt_alloc_state(void)
>> +{
>> + struct kvm_paravirt_state *state;
>> +
>> + state = (void *)get_zeroed_page(GFP_KERNEL);
>> + if (!state)
>> + g
Dor Laor wrote:
> ...
> +static __init struct kvm_paravirt_state *paravirt_alloc_state(void)
> +{
> + struct kvm_paravirt_state *state;
> +
> + state = (void *)get_zeroed_page(GFP_KERNEL);
> + if (!state)
> + goto err;
> +
> + state->vmca = (void *)get_zeroed_page(GFP_KE
On 6/26/07, Dor Laor <[EMAIL PROTECTED]> wrote:
> ...
> +static __init struct kvm_paravirt_state *paravirt_alloc_state(void)
> +{
> + struct kvm_paravirt_state *state;
> +
> + state = (void *)get_zeroed_page(GFP_KERNEL);
> + if (!state)
> + goto err;
> +
> + st
...
+static __init struct kvm_paravirt_state *paravirt_alloc_state(void)
+{
+ struct kvm_paravirt_state *state;
+
+ state = (void *)get_zeroed_page(GFP_KERNEL);
+ if (!state)
+ goto err;
+
+ state->vmca = (void *)get_zeroed_page(GFP_KERNEL);
+ if (!state-
Regards,
Anthony Liguori
Subject: [PATCH] KVM paravirt_ops core infrastructure
Author: Anthony Liguori <[EMAIL PROTECTED]>
This patch implements paravirt_ops support for KVM and updates the current
paravirtualization support in KVM to match. Some changes to the previous
paravirtualization suppo
Anthony Liguori wrote:
>>
>> What's the motivation for these changes?
>
> If we're queuing hypercalls, then having 4 arguments verses 6 means
> that we can queue 50% more hypercalls in a single page. Using all six
> arguments clobbers all the GP registers in 32-bit mode too.
Makes sense.
--
Avi Kivity wrote:
> Anthony Liguori wrote:
>
>
>> -nr = vcpu->regs[VCPU_REGS_RBX] & -1u;
>> -a0 = vcpu->regs[VCPU_REGS_RAX] & -1u;
>> +nr = vcpu->regs[VCPU_REGS_RAX] & -1u;
>> +a0 = vcpu->regs[VCPU_REGS_RBX] & -1u;
>
>
>> - * Each hypercall may have 0-6 parameters.
>
Anthony Liguori wrote:
> - nr = vcpu->regs[VCPU_REGS_RBX] & -1u;
> - a0 = vcpu->regs[VCPU_REGS_RAX] & -1u;
> + nr = vcpu->regs[VCPU_REGS_RAX] & -1u;
> + a0 = vcpu->regs[VCPU_REGS_RBX] & -1u;
> - * Each hypercall may have 0-6 parameters.
> - *
> -
Regards,
Anthony Liguori
Subject: [PATCH] KVM paravirt_ops core infrastructure
Author: Anthony Liguori <[EMAIL PROTECTED]>
This patch implements paravirt_ops support for KVM and updates the current
paravirtualization support in KVM to match. Some changes to the previous
paravirtualization suppo