[PATCH 2/3 v2] arm/xen: Consolidate calls to shutdown hypercall in a single helper

Stefano Stabellini sstabellini at kernel.org
Mon Apr 24 15:30:50 EDT 2017


On Mon, 24 Apr 2017, Julien Grall wrote:
> Signed-off-by: Julien Grall <julien.grall at arm.com>

Reviewed-by: Stefano Stabellini <sstabellini at kernel.org>


> ---
>     Changes in v2:
>         - Patch added
> ---
>  arch/arm/xen/enlighten.c | 16 ++++++++++------
>  1 file changed, 10 insertions(+), 6 deletions(-)
> 
> diff --git a/arch/arm/xen/enlighten.c b/arch/arm/xen/enlighten.c
> index 81e3217b12d3..ba7f4c8f5c3e 100644
> --- a/arch/arm/xen/enlighten.c
> +++ b/arch/arm/xen/enlighten.c
> @@ -191,20 +191,24 @@ static int xen_dying_cpu(unsigned int cpu)
>  	return 0;
>  }
>  
> -static void xen_restart(enum reboot_mode reboot_mode, const char *cmd)
> +void xen_reboot(int reason)
>  {
> -	struct sched_shutdown r = { .reason = SHUTDOWN_reboot };
> +	struct sched_shutdown r = { .reason = reason };
>  	int rc;
> +
>  	rc = HYPERVISOR_sched_op(SCHEDOP_shutdown, &r);
>  	BUG_ON(rc);
>  }
>  
> +static void xen_restart(enum reboot_mode reboot_mode, const char *cmd)
> +{
> +	xen_reboot(SHUTDOWN_reboot);
> +}
> +
> +
>  static void xen_power_off(void)
>  {
> -	struct sched_shutdown r = { .reason = SHUTDOWN_poweroff };
> -	int rc;
> -	rc = HYPERVISOR_sched_op(SCHEDOP_shutdown, &r);
> -	BUG_ON(rc);
> +	xen_reboot(SHUTDOWN_poweroff);
>  }
>  
>  static irqreturn_t xen_arm_callback(int irq, void *arg)
> -- 
> 2.11.0
> 



More information about the linux-arm-kernel mailing list