Merge "sched: fixes sched_boost_disable"
This commit is contained in:
commit
bba14e940d
2 files changed
+7
-7
No files matched your search
@@ -146,7 +146,7 @@ static int sched_effective_boost(void)
|
||||
static void sched_boost_disable(int type)
|
||||
{
|
||||
struct sched_boost_data *sb = &sched_boosts[type];
|
||||
int next_boost;
|
||||
int next_boost, prev_boost = sched_boost_type;
|
||||
|
||||
if (sb->refcount <= 0)
|
||||
return;
|
||||
@@ -156,14 +156,15 @@ static void sched_boost_disable(int type)
|
||||
if (sb->refcount)
|
||||
return;
|
||||
|
||||
next_boost = sched_effective_boost();
|
||||
if (next_boost == prev_boost)
|
||||
return;
|
||||
/*
|
||||
* This boost's refcount becomes zero, so it must
|
||||
* be disabled. Disable it first and then apply
|
||||
* the next boost.
|
||||
*/
|
||||
sb->exit();
|
||||
|
||||
next_boost = sched_effective_boost();
|
||||
sched_boosts[prev_boost].exit();
|
||||
sched_boosts[next_boost].enter();
|
||||
}
|
||||
|
||||
|
||||
@@ -883,10 +883,9 @@ int core_ctl_set_boost(bool boost)
|
||||
if (!cluster->boost) {
|
||||
ret = -EINVAL;
|
||||
break;
|
||||
} else {
|
||||
--cluster->boost;
|
||||
boost_state_changed = !cluster->boost;
|
||||
}
|
||||
--cluster->boost;
|
||||
boost_state_changed = !cluster->boost;
|
||||
}
|
||||
}
|
||||
spin_unlock_irqrestore(&state_lock, flags);
|
||||
|
||||
Reference in new issue
Block a user