Bläddra i källkod

arm64: psci: fix cpu_suspend to check idle state type for index

This fix rectifies the psci cpu_suspend implementation to check the
PSCI power state parameter type field associated with the requested idle
state index.

Acked-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Signed-off-by: Amit Daniel Kachhap <amit.daniel@samsung.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Amit Daniel Kachhap 11 år sedan
förälder
incheckning
f4fd36b880
1 ändrade filer med 1 tillägg och 1 borttagningar
  1. 1 1
      arch/arm64/kernel/psci.c

+ 1 - 1
arch/arm64/kernel/psci.c

@@ -528,7 +528,7 @@ static int __maybe_unused cpu_psci_cpu_suspend(unsigned long index)
 	if (WARN_ON_ONCE(!index))
 	if (WARN_ON_ONCE(!index))
 		return -EINVAL;
 		return -EINVAL;
 
 
-	if (state->type == PSCI_POWER_STATE_TYPE_STANDBY)
+	if (state[index - 1].type == PSCI_POWER_STATE_TYPE_STANDBY)
 		ret = psci_ops.cpu_suspend(state[index - 1], 0);
 		ret = psci_ops.cpu_suspend(state[index - 1], 0);
 	else
 	else
 		ret = __cpu_suspend(index, psci_suspend_finisher);
 		ret = __cpu_suspend(index, psci_suspend_finisher);