From patchwork Wed Jul 11 15:38:26 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alexander Graf X-Patchwork-Id: 170485 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 39D432C0089 for ; Thu, 12 Jul 2012 01:38:36 +1000 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755699Ab2GKPic (ORCPT ); Wed, 11 Jul 2012 11:38:32 -0400 Received: from cantor2.suse.de ([195.135.220.15]:33648 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1758101Ab2GKPib (ORCPT ); Wed, 11 Jul 2012 11:38:31 -0400 Received: from relay1.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 9D906A4AF8; Wed, 11 Jul 2012 17:38:30 +0200 (CEST) From: Alexander Graf To: KVM list Cc: kvm-ppc@vger.kernel.org, Avi Kivity , Marcelo Tossati , Benjamin Herrenschmidt Subject: [PATCH 1/1] powerpc/kvm: Fix "PR" KVM implementation of H_CEDE Date: Wed, 11 Jul 2012 17:38:26 +0200 Message-Id: <1342021106-20000-2-git-send-email-agraf@suse.de> X-Mailer: git-send-email 1.6.0.2 In-Reply-To: <1342021106-20000-1-git-send-email-agraf@suse.de> References: <1342021106-20000-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++;