From patchwork Wed Jul 11 00:56:44 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alexander Graf X-Patchwork-Id: 170329 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 7FB9F2C0204 for ; Wed, 11 Jul 2012 10:57:07 +1000 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932444Ab2GKA5C (ORCPT ); Tue, 10 Jul 2012 20:57:02 -0400 Received: from cantor2.suse.de ([195.135.220.15]:42021 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932439Ab2GKA45 (ORCPT ); Tue, 10 Jul 2012 20:56:57 -0400 Received: from relay2.suse.de (unknown [195.135.220.254]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx2.suse.de (Postfix) with ESMTP id 437C6A4453; Wed, 11 Jul 2012 02:56:56 +0200 (CEST) From: Alexander Graf To: KVM list Cc: kvm-ppc@vger.kernel.org, Avi Kivity , Marcelo Tossati , Benjamin Herrenschmidt Subject: [PATCH 9/9] powerpc/kvm: Fix "PR" KVM implementation of H_CEDE Date: Wed, 11 Jul 2012 02:56:44 +0200 Message-Id: <1341968204-6756-10-git-send-email-agraf@suse.de> X-Mailer: git-send-email 1.6.0.2 In-Reply-To: <1341968204-6756-1-git-send-email-agraf@suse.de> References: <1341968204-6756-1-git-send-email-agraf@suse.de> Sender: kvm-ppc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm-ppc@vger.kernel.org From: Benjamin Herrenschmidt H_CEDE should enable the vcpu's MSR:EE bit. It does on "HV" KVM (it's burried in the assembly code though) and as far as I can tell, qemu does it as well. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Alexander Graf --- arch/powerpc/kvm/book3s_pr_papr.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/arch/powerpc/kvm/book3s_pr_papr.c b/arch/powerpc/kvm/book3s_pr_papr.c index 3ff9013..ee02b30 100644 --- a/arch/powerpc/kvm/book3s_pr_papr.c +++ b/arch/powerpc/kvm/book3s_pr_papr.c @@ -241,6 +241,7 @@ int kvmppc_h_pr(struct kvm_vcpu *vcpu, unsigned long cmd) case H_PUT_TCE: return kvmppc_h_pr_put_tce(vcpu); case H_CEDE: + vcpu->arch.shared->msr |= MSR_EE; kvm_vcpu_block(vcpu); clear_bit(KVM_REQ_UNHALT, &vcpu->requests); vcpu->stat.halt_wakeup++;