>From 33d5786ca376eb73e75f5d9b417094870be716d0 Mon Sep 17 00:00:00 2001
From: Leo Yan <leo.yan@linaro.org>
Date: Thu, 3 Sep 2015 00:52:18 +0800
Subject: [PATCH 2/2] sched/fair: select proper sched domain for shared
 capacity

If the sched domain is already the highest level, need directly use its
group to calculate shared capacity.

Signed-off-by: Leo Yan <leo.yan@linaro.org>
---
 kernel/sched/fair.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
index 70161b9..edfbe5c 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -5035,6 +5035,8 @@ static unsigned int sched_group_energy(struct energy_env *eenv)
 		sd = highest_flag_domain(cpu, SD_SHARE_CAP_STATES);
 		if (sd && sd->parent)
 			sg_shared_cap = sd->parent->groups;
+		else if (sd && !sd->parent)
+			sg_shared_cap = sd->groups;

 		for_each_domain(cpu, sd) {
 			sg = sd->groups;
--
1.9.1

