Re: [PATCH 09/12] arm: Make arch_panic_stop more robust

2016-08-01 Thread Jan Kiszka
On 2016-08-01 15:11, Claudio Fontana wrote:
> On 31 July 2016 at 10:39, Jan Kiszka  wrote:
>> From: Jan Kiszka 
>>
>> Do not rely on the PSCI CPU-off logic to stop a CPU in case of a fatal
>> hypervisor failure - the CPU could theoretically be woken up again.
>> Rather do a terminal wfi loop inline.
>>
>> Signed-off-by: Jan Kiszka 
>> ---
>>  hypervisor/arch/arm/control.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/hypervisor/arch/arm/control.c b/hypervisor/arch/arm/control.c
>> index 477f450..2157b0e 100644
>> --- a/hypervisor/arch/arm/control.c
>> +++ b/hypervisor/arch/arm/control.c
>> @@ -382,7 +382,7 @@ void arch_config_commit(struct cell *cell_added_removed)
>>
>>  void __attribute__((noreturn)) arch_panic_stop(void)
>>  {
>> -   psci_cpu_off(this_cpu_data());
>> +   asm volatile ("1: wfi; b 1b");
>> __builtin_unreachable();
>>  }
>>
>> --
> 
> all interrupts are already disabled for all possible callers right?
> 
> C
> 

Yes, that is true. We enter from Linux with interrupts off and, unless I
missed something, we never enable them in HYP mode.

Jan
-- 
Siemens AG, Corporate Technology, CT RDA ITP SES-DE
Corporate Competence Center Embedded Linux

-- 
You received this message because you are subscribed to the Google Groups 
"Jailhouse" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jailhouse-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [PATCH 09/12] arm: Make arch_panic_stop more robust

2016-08-01 Thread Claudio Fontana
On 31 July 2016 at 10:39, Jan Kiszka  wrote:
> From: Jan Kiszka 
>
> Do not rely on the PSCI CPU-off logic to stop a CPU in case of a fatal
> hypervisor failure - the CPU could theoretically be woken up again.
> Rather do a terminal wfi loop inline.
>
> Signed-off-by: Jan Kiszka 
> ---
>  hypervisor/arch/arm/control.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/hypervisor/arch/arm/control.c b/hypervisor/arch/arm/control.c
> index 477f450..2157b0e 100644
> --- a/hypervisor/arch/arm/control.c
> +++ b/hypervisor/arch/arm/control.c
> @@ -382,7 +382,7 @@ void arch_config_commit(struct cell *cell_added_removed)
>
>  void __attribute__((noreturn)) arch_panic_stop(void)
>  {
> -   psci_cpu_off(this_cpu_data());
> +   asm volatile ("1: wfi; b 1b");
> __builtin_unreachable();
>  }
>
> --

all interrupts are already disabled for all possible callers right?

C

-- 
You received this message because you are subscribed to the Google Groups 
"Jailhouse" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jailhouse-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.