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

Commit bba14e94 authored by qctecmdr's avatar qctecmdr Committed by Gerrit - the friendly Code Review server
Browse files

Merge "sched: fixes sched_boost_disable"

parents 6f02ecff f4b0ef33
Loading
Loading
Loading
Loading
+5 −4
Original line number Diff line number Diff line
@@ -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();
}

+2 −3
Original line number Diff line number Diff line
@@ -883,12 +883,11 @@ int core_ctl_set_boost(bool boost)
			if (!cluster->boost) {
				ret = -EINVAL;
				break;
			} else {
			}
			--cluster->boost;
			boost_state_changed = !cluster->boost;
		}
	}
	}
	spin_unlock_irqrestore(&state_lock, flags);

	if (boost_state_changed) {