From patchwork Wed May 4 19:43:35 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Kiszka X-Patchwork-Id: 754602 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter2.kernel.org (8.14.4/8.14.3) with ESMTP id p44JiJgQ023958 for ; Wed, 4 May 2011 19:44:19 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755540Ab1EDToP (ORCPT ); Wed, 4 May 2011 15:44:15 -0400 Received: from fmmailgate03.web.de ([217.72.192.234]:40677 "EHLO fmmailgate03.web.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755448Ab1EDToN (ORCPT ); Wed, 4 May 2011 15:44:13 -0400 Received: from smtp04.web.de ( [172.20.0.225]) by fmmailgate03.web.de (Postfix) with ESMTP id D906318E0291F; Wed, 4 May 2011 21:44:11 +0200 (CEST) Received: from [88.64.22.120] (helo=localhost.localdomain) by smtp04.web.de with asmtp (TLSv1:AES256-SHA:256) (WEB.DE 4.110 #2) id 1QHhzX-0006mo-01; Wed, 04 May 2011 21:44:11 +0200 From: Jan Kiszka To: Avi Kivity , Marcelo Tosatti Cc: kvm@vger.kernel.org Subject: [PATCH 01/19] qemu-kvm: Switch to upstream mp_state functions Date: Wed, 4 May 2011 21:43:35 +0200 Message-Id: <172b0566eccccd32e97dbad489efc5ab5f6f0c1a.1304538230.git.jan.kiszka@web.de> X-Mailer: git-send-email 1.7.1 In-Reply-To: References: In-Reply-To: References: X-Sender: jan.kiszka@web.de X-Provags-ID: V01U2FsdGVkX181UgQk2NsWohOdOTGqrt/VmYUT4JwjpdcqVbVT Z++Jdzuka8bRVo90X8XhuCKSW1fqp+FOtAaA33zpKsANg0+Mx8 0LWhNwXos= Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.6 (demeter2.kernel.org [140.211.167.43]); Wed, 04 May 2011 19:44:19 +0000 (UTC) From: Jan Kiszka They are now equivalent to qemu-kvm's version (minus the obsolete feature check). Signed-off-by: Jan Kiszka --- qemu-kvm-x86.c | 40 ++-------------------------------------- target-i386/kvm.c | 2 -- 2 files changed, 2 insertions(+), 40 deletions(-) diff --git a/qemu-kvm-x86.c b/qemu-kvm-x86.c index d37f217..26ac852 100644 --- a/qemu-kvm-x86.c +++ b/qemu-kvm-x86.c @@ -546,42 +546,6 @@ int kvm_arch_qemu_create_context(void) return 0; } -static void kvm_arch_save_mpstate(CPUState *env) -{ -#ifdef KVM_CAP_MP_STATE - int r; - struct kvm_mp_state mp_state; - - r = kvm_get_mpstate(env, &mp_state); - if (r < 0) { - env->mp_state = -1; - } else { - env->mp_state = mp_state.mp_state; - if (kvm_irqchip_in_kernel()) { - env->halted = (env->mp_state == KVM_MP_STATE_HALTED); - } - } -#else - env->mp_state = -1; -#endif -} - -static void kvm_arch_load_mpstate(CPUState *env) -{ -#ifdef KVM_CAP_MP_STATE - struct kvm_mp_state mp_state; - - /* - * -1 indicates that the host did not support GET_MP_STATE ioctl, - * so don't touch it. - */ - if (env->mp_state != -1) { - mp_state.mp_state = env->mp_state; - kvm_set_mpstate(env, &mp_state); - } -#endif -} - #define XSAVE_CWD_RIP 2 #define XSAVE_CWD_RDP 4 #define XSAVE_MXCSR 6 @@ -609,7 +573,7 @@ void kvm_arch_load_regs(CPUState *env, int level) } if (level >= KVM_PUT_RESET_STATE) { - kvm_arch_load_mpstate(env); + kvm_put_mp_state(env); kvm_load_lapic(env); } if (level == KVM_PUT_FULL_STATE) { @@ -643,7 +607,7 @@ void kvm_arch_save_regs(CPUState *env) perror("kvm_get_msrs FAILED"); } - kvm_arch_save_mpstate(env); + kvm_get_mp_state(env); kvm_save_lapic(env); kvm_get_vcpu_events(env); kvm_get_debugregs(env); diff --git a/target-i386/kvm.c b/target-i386/kvm.c index 48d4f97..7974e62 100644 --- a/target-i386/kvm.c +++ b/target-i386/kvm.c @@ -1280,7 +1280,6 @@ static int kvm_get_msrs(CPUState *env) return 0; } -#ifdef OBSOLETE_KVM_IMPL static int kvm_put_mp_state(CPUState *env) { struct kvm_mp_state mp_state = { .mp_state = env->mp_state }; @@ -1303,7 +1302,6 @@ static int kvm_get_mp_state(CPUState *env) } return 0; } -#endif static int kvm_put_vcpu_events(CPUState *env, int level) {