Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 71c075a1 authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "arm64: Fix deadlock scenario with smp_send_stop()"

parents a2c2411c 240eea98
Loading
Loading
Loading
Loading
+3 −2
Original line number Original line Diff line number Diff line
@@ -128,6 +128,7 @@ void machine_shutdown(void)
 */
 */
void machine_halt(void)
void machine_halt(void)
{
{
	local_irq_disable();
	smp_send_stop();
	smp_send_stop();
	while (1);
	while (1);
}
}
@@ -140,6 +141,7 @@ void machine_halt(void)
 */
 */
void machine_power_off(void)
void machine_power_off(void)
{
{
	local_irq_disable();
	smp_send_stop();
	smp_send_stop();
	if (pm_power_off)
	if (pm_power_off)
		pm_power_off();
		pm_power_off();
@@ -158,10 +160,9 @@ void machine_power_off(void)
 */
 */
void machine_restart(char *cmd)
void machine_restart(char *cmd)
{
{
	smp_send_stop();

	/* Disable interrupts first */
	/* Disable interrupts first */
	local_irq_disable();
	local_irq_disable();
	smp_send_stop();


	/* Now call the architecture specific reboot code. */
	/* Now call the architecture specific reboot code. */
	if (arm_pm_restart)
	if (arm_pm_restart)