All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] xen: Don't call panic if ARM TF cpu off returns DENIED
@ 2022-06-16 13:55 dmitry.semenets
  2022-06-16 15:12 ` Julien Grall
  0 siblings, 1 reply; 13+ messages in thread
From: dmitry.semenets @ 2022-06-16 13:55 UTC (permalink / raw)
  To: xen-devel
  Cc: Dmytro Semenets, Stefano Stabellini, Julien Grall,
	Bertrand Marquis, Volodymyr Babchuk, Volodymyr Babchuk

From: Dmytro Semenets <dmytro_semenets@epam.com>

According to PSCI specification ARM TF can return DENIED on CPU OFF.
This patch brings the hypervisor into compliance with the PSCI
specification.
Refer to "Arm Power State Coordination Interface (DEN0022D.b)"
section 5.5.2

Signed-off-by: Dmytro Semenets <dmytro_semenets@epam.com>
Reviewed-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
---
 xen/arch/arm/psci.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/xen/arch/arm/psci.c b/xen/arch/arm/psci.c
index 0c90c2305c..55787fde58 100644
--- a/xen/arch/arm/psci.c
+++ b/xen/arch/arm/psci.c
@@ -63,8 +63,9 @@ void call_psci_cpu_off(void)
 
         /* If successfull the PSCI cpu_off call doesn't return */
         arm_smccc_smc(PSCI_0_2_FN32_CPU_OFF, &res);
-        panic("PSCI cpu off failed for CPU%d err=%d\n", smp_processor_id(),
-              PSCI_RET(res));
+        if ( PSCI_RET(res) != PSCI_DENIED )
+            panic("PSCI cpu off failed for CPU%d err=%d\n", smp_processor_id(),
+                PSCI_RET(res));
     }
 }
 
-- 
2.25.1



^ permalink raw reply related	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2022-06-21 10:45 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-06-16 13:55 [PATCH] xen: Don't call panic if ARM TF cpu off returns DENIED dmitry.semenets
2022-06-16 15:12 ` Julien Grall
2022-06-16 18:40   ` Volodymyr Babchuk
2022-06-16 19:09     ` Julien Grall
2022-06-16 19:32       ` Dmytro Semenets
2022-06-17  9:10       ` Volodymyr Babchuk
2022-06-17 11:12         ` Julien Grall
2022-06-18 17:43           ` Dmytro Semenets
2022-06-19  9:04             ` Julien Grall
2022-06-21  8:55               ` Dmytro Semenets
2022-06-21  9:51                 ` Julien Grall
2022-06-21 10:05                   ` Dmytro Semenets
2022-06-21 10:45                     ` Julien Grall

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.