|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 4/7] xen/arm: traps: Avoid using BUG_ON() in _show_registers()
Julien Grall writes:
> At the moment, _show_registers() is using a BUG_ON() to assert only
> userspace will run 32-bit code in a 64-bit domain.
>
> Such extra precaution is not necessary and could be avoided by only
> checking the CPU mode to decide whether show_registers_64() or
> show_reigsters_32() should be called.
>
> This has also the nice advantage to avoid nested if in the code.
>
> Signed-off-by: Julien Grall <julien.grall@xxxxxxx>
Reviewed-by: Volodymyr Babchuk <volodymyr_babchuk@xxxxxxxx>
> ---
> xen/arch/arm/traps.c | 16 +++-------------
> 1 file changed, 3 insertions(+), 13 deletions(-)
>
> diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c
> index 54e66a86d0..132686ee0f 100644
> --- a/xen/arch/arm/traps.c
> +++ b/xen/arch/arm/traps.c
> @@ -914,21 +914,11 @@ static void _show_registers(const struct cpu_user_regs
> *regs,
>
> if ( guest_mode )
> {
> - if ( is_32bit_domain(v->domain) )
> + if ( psr_mode_is_32bit(regs) )
> show_registers_32(regs, ctxt, guest_mode, v);
> #ifdef CONFIG_ARM_64
> - else if ( is_64bit_domain(v->domain) )
> - {
> - if ( psr_mode_is_32bit(regs) )
> - {
> - BUG_ON(!usr_mode(regs));
> - show_registers_32(regs, ctxt, guest_mode, v);
> - }
> - else
> - {
> - show_registers_64(regs, ctxt, guest_mode, v);
> - }
> - }
> + else
> + show_registers_64(regs, ctxt, guest_mode, v);
> #endif
> }
> else
--
Volodymyr Babchuk at EPAM
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |