[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 07/17] xen/arm64: head: Rework and document check_cpu_mode()
On Mon, 10 Jun 2019, Julien Grall wrote: > A branch in the success case can be avoided by inverting the branch > condition. At the same time, remove a pointless comment as Xen can only > run at EL2. > > Lastly, document the behavior and the main registers usage within the > function. > > Signed-off-by: Julien Grall <julien.grall@xxxxxxx> Reviewed-by: Stefano Stabellini <sstabellini@xxxxxxxxxx> > --- > xen/arch/arm/arm64/head.S | 15 ++++++++++----- > 1 file changed, 10 insertions(+), 5 deletions(-) > > diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S > index ccd8a1b0a8..87fcd3be6c 100644 > --- a/xen/arch/arm/arm64/head.S > +++ b/xen/arch/arm/arm64/head.S > @@ -350,6 +350,13 @@ secondary_switched: > b launch > ENDPROC(init_secondary) > > +/* > + * Check if the CPU has been booted in Hypervisor mode. > + * This function will never return when the CPU is booted in another mode > + * than Hypervisor mode. > + * > + * Clobbers x0 - x5 > + */ > check_cpu_mode: > PRINT("- Current EL ") > mrs x5, CurrentEL > @@ -359,15 +366,13 @@ check_cpu_mode: > /* Are we in EL2 */ > cmp x5, #PSR_MODE_EL2t > ccmp x5, #PSR_MODE_EL2h, #0x4, ne > - b.eq el2 /* Yes */ > - > + b.ne 1f /* No */ > + ret > +1: > /* OK, we're boned. */ > PRINT("- Xen must be entered in NS EL2 mode -\r\n") > PRINT("- Please update the bootloader -\r\n") > b fail > - > -el2: PRINT("- Xen starting at EL2 -\r\n") > - ret > ENDPROC(check_cpu_mode) > > zero_bss: > -- > 2.11.0 > _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |