From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:49702) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1b7sAN-0002n4-8a for qemu-devel@nongnu.org; Tue, 31 May 2016 18:29:40 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1b7sAM-0005Uf-70 for qemu-devel@nongnu.org; Tue, 31 May 2016 18:29:39 -0400 References: <1464655277-14748-1-git-send-email-david@gibson.dropbear.id.au> <1464655277-14748-5-git-send-email-david@gibson.dropbear.id.au> From: Mark Cave-Ayland Message-ID: <574E1021.8040805@ilande.co.uk> Date: Tue, 31 May 2016 23:28:49 +0100 MIME-Version: 1.0 In-Reply-To: <1464655277-14748-5-git-send-email-david@gibson.dropbear.id.au> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [Qemu-ppc] [PULL 04/12] ppc: tlbie, tlbia and tlbisync are HV only List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: David Gibson , peter.maydell@linaro.org Cc: qemu-devel@nongnu.org, qemu-ppc@nongnu.org, bharata.rao@gmail.com, pbonzini@redhat.com On 31/05/16 01:41, David Gibson wrote: > From: Benjamin Herrenschmidt > > Not that anything remotely recent supports tlbia but ... > > Signed-off-by: Benjamin Herrenschmidt > Signed-off-by: David Gibson > --- > target-ppc/translate.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/target-ppc/translate.c b/target-ppc/translate.c > index dfd3010..690ffd2 100644 > --- a/target-ppc/translate.c > +++ b/target-ppc/translate.c > @@ -4858,7 +4858,7 @@ static void gen_tlbie(DisasContext *ctx) > #if defined(CONFIG_USER_ONLY) > gen_inval_exception(ctx, POWERPC_EXCP_PRIV_OPC); > #else > - if (unlikely(ctx->pr)) { > + if (unlikely(ctx->pr || !ctx->hv)) { > gen_inval_exception(ctx, POWERPC_EXCP_PRIV_OPC); > return; > } > @@ -4879,7 +4879,7 @@ static void gen_tlbsync(DisasContext *ctx) > #if defined(CONFIG_USER_ONLY) > gen_inval_exception(ctx, POWERPC_EXCP_PRIV_OPC); > #else > - if (unlikely(ctx->pr)) { > + if (unlikely(ctx->pr || !ctx->hv)) { > gen_inval_exception(ctx, POWERPC_EXCP_PRIV_OPC); > return; > } > @@ -4898,7 +4898,7 @@ static void gen_slbia(DisasContext *ctx) > #if defined(CONFIG_USER_ONLY) > gen_inval_exception(ctx, POWERPC_EXCP_PRIV_OPC); > #else > - if (unlikely(ctx->pr)) { > + if (unlikely(ctx->pr || !ctx->hv)) { > gen_inval_exception(ctx, POWERPC_EXCP_PRIV_OPC); > return; > } Unfortunately this patch breaks qemu-system-ppc for both g3beige and mac99 under TCG causing a freeze in OpenBIOS when starting qemu-system-ppc with no parameters. Note that there is also another regression that has recently landed in git master so you'll also need to revert e7c9136977cb99c6eb52c9139f7b8d8b5fa87db9 in order to get back to a functioning OpenBIOS. ATB, Mark.