[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-ppc] [PATCH v2] FU exceptions should carry a cause (IC)
From: |
David Gibson |
Subject: |
Re: [Qemu-ppc] [PATCH v2] FU exceptions should carry a cause (IC) |
Date: |
Fri, 11 Nov 2016 10:50:57 +1100 |
User-agent: |
Mutt/1.7.1 (2016-10-04) |
On Thu, Nov 10, 2016 at 03:37:31PM +1100, Balbir Singh wrote:
>
>
> As per the ISA we need a cause and executing a tabort r9 in libc
> for example causes a EXCP_FU exception, we don't wire up the
> IC (cause) when we post the exception. The cause is required
> for the kernel to do the right thing. The fix applies only to 64
> bit ppc targets.
>
> Signed-off-by: Balbir singh <address@hidden>
Applied to ppc-for-2.8.
> ---
> Changelog v2:
> Make the code 64 bit specific
>
> target-ppc/excp_helper.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/target-ppc/excp_helper.c b/target-ppc/excp_helper.c
> index 808760b..93369d4 100644
> --- a/target-ppc/excp_helper.c
> +++ b/target-ppc/excp_helper.c
> @@ -427,6 +427,9 @@ static inline void powerpc_excp(PowerPCCPU *cpu, int
> excp_model, int excp)
> case POWERPC_EXCP_VPU: /* Vector unavailable exception
> */
> case POWERPC_EXCP_VSXU: /* VSX unavailable exception
> */
> case POWERPC_EXCP_FU: /* Facility unavailable exception
> */
> +#ifdef TARGET_PPC64
> + env->spr[SPR_FSCR] |= ((target_ulong)env->error_code << 56);
> +#endif
> break;
> case POWERPC_EXCP_PIT: /* Programmable interval timer interrupt
> */
> LOG_EXCP("PIT exception\n");
--
David Gibson | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson
signature.asc
Description: PGP signature