Re: [kvm-devel] [PATCH 1/5] KVM paravirt_ops core infrastructure

2007-06-26 Thread Anthony Liguori
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

Re: [kvm-devel] [PATCH 1/5] KVM paravirt_ops core infrastructure

2007-06-26 Thread Anthony Liguori
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

Re: [kvm-devel] [PATCH 1/5] KVM paravirt_ops core infrastructure

2007-06-26 Thread Jun Koi
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

Re: [kvm-devel] [PATCH 1/5] KVM paravirt_ops core infrastructure

2007-06-26 Thread Dor Laor
... +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-

[kvm-devel] [PATCH 1/5] KVM paravirt_ops core infrastructure

2007-06-20 Thread Anthony Liguori
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

Re: [kvm-devel] [PATCH 1/5] KVM paravirt_ops core infrastructure

2007-06-18 Thread Avi Kivity
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. --

Re: [kvm-devel] [PATCH 1/5] KVM paravirt_ops core infrastructure

2007-06-18 Thread Anthony Liguori
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. >

Re: [kvm-devel] [PATCH 1/5] KVM paravirt_ops core infrastructure

2007-06-18 Thread Avi Kivity
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. > - * > -

[kvm-devel] [PATCH 1/5] KVM paravirt_ops core infrastructure

2007-06-17 Thread Anthony Liguori
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