On Thu, Nov 26, 2015 at 04:06:40PM +0100, Ard Biesheuvel wrote:
> On 20 November 2015 at 13:46, Mark Rutland <mark.rutl...@arm.com> wrote:
> > On Fri, Nov 20, 2015 at 01:39:26PM +0100, Ard Biesheuvel wrote:
> >> The PrePeiCore vector table for AArch64 mode is only half populated.
> >> However unlikely, if exceptions from lower exception levels are ever
> >> taken, they should be reported correctly, rather than causing a
> >> recursive undefined instruction fault on the zero padding that was
> >> introduced by commit SVN r18904 ("ArmPkg/ArmPlatformPkg: position
> >> vectors relative to base"). So add the missing entries, and wire
> >> them up to the default handler.
> >>
> >> Contributed-under: TianoCore Contribution Agreement 1.0
> >> Signed-off-by: Ard Biesheuvel <ard.biesheu...@linaro.org>
> >
> > Acked-by: Mark Rutland <mark.rutl...@arm.com>
> >
> > Mark.
> >
> 
> Ping?

Applied locally.

Thanks,
Mark.

p.s. I assume you're asking Leif to apply this upstream?

> 
> >> ---
> >>  ArmPlatformPkg/PrePeiCore/AArch64/Exception.S | 40 ++++++++++++++++++++
> >>  1 file changed, 40 insertions(+)
> >>
> >> diff --git a/ArmPlatformPkg/PrePeiCore/AArch64/Exception.S 
> >> b/ArmPlatformPkg/PrePeiCore/AArch64/Exception.S
> >> index b31854ced256..75cd98ff4863 100644
> >> --- a/ArmPlatformPkg/PrePeiCore/AArch64/Exception.S
> >> +++ b/ArmPlatformPkg/PrePeiCore/AArch64/Exception.S
> >> @@ -77,4 +77,44 @@ _DefaultSError_h:
> >>    mov  x0, #EXCEPT_AARCH64_SERROR
> >>    TO_HANDLER
> >>
> >> +VECTOR_ENTRY(PeiVectorTable, ARM_VECTOR_LOW_A64_SYNC)
> >> +_DefaultSyncExceptHandler_LowerA64:
> >> +  mov  x0, #EXCEPT_AARCH64_SYNCHRONOUS_EXCEPTIONS
> >> +  TO_HANDLER
> >> +
> >> +VECTOR_ENTRY(PeiVectorTable, ARM_VECTOR_LOW_A64_IRQ)
> >> +_DefaultIrq_LowerA64:
> >> +  mov  x0, #EXCEPT_AARCH64_IRQ
> >> +  TO_HANDLER
> >> +
> >> +VECTOR_ENTRY(PeiVectorTable, ARM_VECTOR_LOW_A64_FIQ)
> >> +_DefaultFiq_LowerA64:
> >> +  mov  x0, #EXCEPT_AARCH64_FIQ
> >> +  TO_HANDLER
> >> +
> >> +VECTOR_ENTRY(PeiVectorTable, ARM_VECTOR_LOW_A64_SERR)
> >> +_DefaultSError_LowerA64:
> >> +  mov  x0, #EXCEPT_AARCH64_SERROR
> >> +  TO_HANDLER
> >> +
> >> +VECTOR_ENTRY(PeiVectorTable, ARM_VECTOR_LOW_A32_SYNC)
> >> +_DefaultSyncExceptHandler_LowerA32:
> >> +  mov  x0, #EXCEPT_AARCH64_SYNCHRONOUS_EXCEPTIONS
> >> +  TO_HANDLER
> >> +
> >> +VECTOR_ENTRY(PeiVectorTable, ARM_VECTOR_LOW_A32_IRQ)
> >> +_DefaultIrq_LowerA32:
> >> +  mov  x0, #EXCEPT_AARCH64_IRQ
> >> +  TO_HANDLER
> >> +
> >> +VECTOR_ENTRY(PeiVectorTable, ARM_VECTOR_LOW_A32_FIQ)
> >> +_DefaultFiq_LowerA32:
> >> +  mov  x0, #EXCEPT_AARCH64_FIQ
> >> +  TO_HANDLER
> >> +
> >> +VECTOR_ENTRY(PeiVectorTable, ARM_VECTOR_LOW_A32_SERR)
> >> +_DefaultSError_LowerA32:
> >> +  mov  x0, #EXCEPT_AARCH64_SERROR
> >> +  TO_HANDLER
> >> +
> >>  VECTOR_END(PeiVectorTable)
> >> --
> >> 1.9.1
> >>
> 
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to