[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-ppc] [PULL 04/12] ppc: tlbie, tlbia and tlbisync are HV only
From: |
Mark Cave-Ayland |
Subject: |
Re: [Qemu-ppc] [PULL 04/12] ppc: tlbie, tlbia and tlbisync are HV only |
Date: |
Tue, 31 May 2016 23:28:49 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Icedove/38.8.0 |
On 31/05/16 01:41, David Gibson wrote:
> From: Benjamin Herrenschmidt <address@hidden>
>
> Not that anything remotely recent supports tlbia but ...
>
> Signed-off-by: Benjamin Herrenschmidt <address@hidden>
> Signed-off-by: David Gibson <address@hidden>
> ---
> 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.
- [Qemu-ppc] [PULL 00/12] ppc-for-2.7 queue 20160531, David Gibson, 2016/05/30
- [Qemu-ppc] [PULL 04/12] ppc: tlbie, tlbia and tlbisync are HV only, David Gibson, 2016/05/30
- Re: [Qemu-ppc] [PULL 04/12] ppc: tlbie, tlbia and tlbisync are HV only,
Mark Cave-Ayland <=
- [Qemu-ppc] [PULL 09/12] exec: Remove cpu from cpus list during cpu_exec_exit(), David Gibson, 2016/05/30
- [Qemu-ppc] [PULL 01/12] ppc: Remove MMU_MODEn_SUFFIX definitions, David Gibson, 2016/05/30
- [Qemu-ppc] [PULL 02/12] ppc: Use split I/D mmu modes to avoid flushes on interrupts, David Gibson, 2016/05/30
- [Qemu-ppc] [PULL 03/12] ppc: Do some batching of TCG tlb flushes, David Gibson, 2016/05/30
- [Qemu-ppc] [PULL 05/12] ppc: Change 'invalid' bit mask of tlbiel and tlbie, David Gibson, 2016/05/30
- [Qemu-ppc] [PULL 10/12] exec: Do vmstate unregistration from cpu_exec_exit(), David Gibson, 2016/05/30
- [Qemu-ppc] [PULL 08/12] ppc: Add PPC_64H instruction flag to POWER7 and POWER8, David Gibson, 2016/05/30
- [Qemu-ppc] [PULL 11/12] cpu: Reclaim vCPU objects, David Gibson, 2016/05/30
- [Qemu-ppc] [PULL 07/12] ppc: Get out of emulation on SMT "OR" ops, David Gibson, 2016/05/30