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

Commit 7c5b3fc2 authored by Russell King's avatar Russell King Committed by Russell King
Browse files

[ARM] 2/4 Fix oprofile suspend/resume



The oprofile suspend/resume was missing locking.  If we failed
to start oprofile on resume, we still reported that it was
enabled.  Instead, disable oprofile on error.

Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent b5893c56
Loading
Loading
Loading
Loading
+7 −3
Original line number Diff line number Diff line
@@ -78,15 +78,19 @@ static void pmu_stop(void)
#ifdef CONFIG_PM
static int pmu_suspend(struct sys_device *dev, pm_message_t state)
{
	down(&pmu_sem);
	if (pmu_enabled)
		pmu_stop();
		pmu_model->stop();
	up(&pmu_sem);
	return 0;
}

static int pmu_resume(struct sys_device *dev)
{
	if (pmu_enabled)
		pmu_start();
	down(&pmu_sem);
	if (pmu_enabled && pmu_model->start())
		pmu_enabled = 0;
	up(&pmu_sem);
	return 0;
}