[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <168897682340.404.2001714944772345675.tip-bot2@tip-bot2>
Date: Mon, 10 Jul 2023 08:13:43 -0000
From: "tip-bot2 for Miaohe Lin" <tip-bot2@...utronix.de>
To: linux-tip-commits@...r.kernel.org
Cc: Miaohe Lin <linmiaohe@...wei.com>,
"Peter Zijlstra (Intel)" <peterz@...radead.org>,
Phil Auld <pauld@...hat.com>, Mel Gorman <mgorman@...e.de>,
x86@...nel.org, linux-kernel@...r.kernel.org
Subject: [tip: sched/urgent] sched/fair: Use recent_used_cpu to test p->cpus_ptr
The following commit has been merged into the sched/urgent branch of tip:
Commit-ID: ae2ad293d6be143ad223f5f947cca07bcbe42595
Gitweb: https://git.kernel.org/tip/ae2ad293d6be143ad223f5f947cca07bcbe42595
Author: Miaohe Lin <linmiaohe@...wei.com>
AuthorDate: Tue, 20 Jun 2023 16:07:47 +08:00
Committer: Peter Zijlstra <peterz@...radead.org>
CommitterDate: Mon, 10 Jul 2023 09:52:30 +02:00
sched/fair: Use recent_used_cpu to test p->cpus_ptr
When checking whether a recently used CPU can be a potential idle
candidate, recent_used_cpu should be used to test p->cpus_ptr as
p->recent_used_cpu is not equal to recent_used_cpu and candidate
decision is made based on recent_used_cpu here.
Fixes: 89aafd67f28c ("sched/fair: Use prev instead of new target as recent_used_cpu")
Signed-off-by: Miaohe Lin <linmiaohe@...wei.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@...radead.org>
Reviewed-by: Phil Auld <pauld@...hat.com>
Acked-by: Mel Gorman <mgorman@...e.de>
Link: https://lore.kernel.org/r/20230620080747.359122-1-linmiaohe@huawei.com
---
kernel/sched/fair.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
index a80a739..b3e25be 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -7174,7 +7174,7 @@ static int select_idle_sibling(struct task_struct *p, int prev, int target)
recent_used_cpu != target &&
cpus_share_cache(recent_used_cpu, target) &&
(available_idle_cpu(recent_used_cpu) || sched_idle_cpu(recent_used_cpu)) &&
- cpumask_test_cpu(p->recent_used_cpu, p->cpus_ptr) &&
+ cpumask_test_cpu(recent_used_cpu, p->cpus_ptr) &&
asym_fits_cpu(task_util, util_min, util_max, recent_used_cpu)) {
return recent_used_cpu;
}
Powered by blists - more mailing lists