Message ID | 20130806182309.2386.35697.sendpatchset@codeblue.in.ibm.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Tue, Aug 6, 2013 at 11:23 AM, Raghavendra K T <raghavendra.kt@linux.vnet.ibm.com> wrote: > kvm : Fold pv_unhalt flag into GET_MP_STATE ioctl to aid migration > > From: Raghavendra K T <raghavendra.kt@linux.vnet.ibm.com> > > During migration, any vcpu that got kicked but did not become runnable > (still in halted state) should be runnable after migration. If this is about migration correctness, could it get folded into the previous patch 2/5, so that there's not a broken commit which could hurt bisection? > > Signed-off-by: Raghavendra K T <raghavendra.kt@linux.vnet.ibm.com> > Acked-by: Gleb Natapov <gleb@redhat.com> > Acked-by: Ingo Molnar <mingo@kernel.org> > --- > arch/x86/kvm/x86.c | 7 ++++++- > 1 file changed, 6 insertions(+), 1 deletion(-) > > diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c > index dae4575..1e73dab 100644 > --- a/arch/x86/kvm/x86.c > +++ b/arch/x86/kvm/x86.c > @@ -6284,7 +6284,12 @@ int kvm_arch_vcpu_ioctl_get_mpstate(struct kvm_vcpu *vcpu, > struct kvm_mp_state *mp_state) > { > kvm_apic_accept_events(vcpu); > - mp_state->mp_state = vcpu->arch.mp_state; > + if (vcpu->arch.mp_state == KVM_MP_STATE_HALTED && > + vcpu->arch.pv.pv_unhalted) > + mp_state->mp_state = KVM_MP_STATE_RUNNABLE; > + else > + mp_state->mp_state = vcpu->arch.mp_state; > + > return 0; > } > > > _______________________________________________ > Virtualization mailing list > Virtualization@lists.linux-foundation.org > https://lists.linuxfoundation.org/mailman/listinfo/virtualization -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On 08/07/2013 12:02 AM, Eric Northup wrote: > > If this is about migration correctness, could it get folded into the > previous patch 2/5, so that there's not a broken commit which could > hurt bisection? Yes. It could be. Only reason I maintained like that was, original author in the previous patch is different (Srivatsa) and I did not want to merge this hunk when the patch series got evolved to mix the sign-offs. Gleb, Paolo please let me know. -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wed, Aug 07, 2013 at 12:40:36AM +0530, Raghavendra K T wrote: > On 08/07/2013 12:02 AM, Eric Northup wrote: > > > >If this is about migration correctness, could it get folded into the > >previous patch 2/5, so that there's not a broken commit which could > >hurt bisection? > > Yes. It could be. Only reason I maintained like that was, > original author in the previous patch is different (Srivatsa) and I did > not want to merge this hunk when the patch series got evolved to mix > the sign-offs. > > Gleb, Paolo please let me know. > Yes please, do so. -- Gleb. -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c index dae4575..1e73dab 100644 --- a/arch/x86/kvm/x86.c +++ b/arch/x86/kvm/x86.c @@ -6284,7 +6284,12 @@ int kvm_arch_vcpu_ioctl_get_mpstate(struct kvm_vcpu *vcpu, struct kvm_mp_state *mp_state) { kvm_apic_accept_events(vcpu); - mp_state->mp_state = vcpu->arch.mp_state; + if (vcpu->arch.mp_state == KVM_MP_STATE_HALTED && + vcpu->arch.pv.pv_unhalted) + mp_state->mp_state = KVM_MP_STATE_RUNNABLE; + else + mp_state->mp_state = vcpu->arch.mp_state; + return 0; }