On Mon, Nov 16, 2015 at 08:08:18PM +0100, Ard Biesheuvel wrote:
> On 16 November 2015 at 19:41, Vladimir Olovyannikov
> <volov...@broadcom.com> wrote:
> >> -----Original Message-----
> >> From: Ard Biesheuvel [mailto:ard.biesheu...@linaro.org]
> >> Sent: Monday, November 16, 2015 10:28 AM
> >> To: Vladimir Olovyannikov
> >> Cc: Mark Rutland; edk2-devel@lists.01.org
> >> Subject: Re: [edk2] Armv8 64bit: System error booting linux from the UEFI
> >>
> > [...]
> >> >
> >> > Async abort occurs in ArmWriteVBar() called by InitializeDebugAgent(),
> >> DebugAgentSymbolsBaseLib.c.
> >> > Prior to this call I can easily enable async aborts with no "bad"
> >> consequences.
> >> >
> >> > Here is the exact instruction causing the SError in the ArmWriteVBar():
> >> > 2: msr   vbar_el2, x0            // Set the Address of the EL2 Vector 
> >> > Table in the
> >> VBAR register
> >>
> >> Are you using a release build? If so, you should check whether x0 is
> >> correctly aligned to 2 KB. The ASSERT() tries to establish that, but
> >> it is only active in DEBUG builds.
> >>
> > Ard, it is a DEBUG build.
> 
> OK. So that should confirm that x0 is aligned to 2 KB.
> 
> Perhaps the write to VBAR_EL2 enables the delivery in some way. Could
> you check the A bit in ESR_EL1 before and after?

Do you mean in DAIF / PSTATE? I'm not sure what ESR_ELx would have to do
with this.

Thanks,
Mark.
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to