All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2] sched: Remove obscure comment from select_task_rq_fair
@ 2018-05-28  1:24 Joel Fernandes (Google)
  2018-05-28  7:15 ` Peter Zijlstra
  0 siblings, 1 reply; 3+ messages in thread
From: Joel Fernandes (Google) @ 2018-05-28  1:24 UTC (permalink / raw)
  To: linux-kernel
  Cc: Joel Fernandes (Google),
	Dietmar Eggemann, Morten Ramussen, Ingo Molnar, Peter Zijlstra,
	Juri Lelli, Vincent Guittot, Patrick Bellasi, Rohit Jain,
	kernel-team

I was playing with cpusets and sched_load_balance flag and notice that
the fast-path (select_idle_sibling) can also be attempted for
exec-balance, not just wake-balance if the waker cpu's cpuset has
sched_load_balance = 0. This patch removes the obscure comment which was
saying this path can be entered only for wake-balance.

To trigger this, I just do:
mkdir /cpuset
mount -t cpuset none /cpuset
echo 0 > sched_load_balance

Then did some random activity and dumped the stack from 'if (!sd)' for
the non wake-balance cases.

Following is one of the stacks:
dump_stack+0x46/0x5b
select_task_rq_fair+0x101d/0x1030
sched_exec+0x4f/0xc0
do_execveat_common.isra.41+0x1e3/0x7c0
__x64_sys_execve+0x2d/0x40
do_syscall_64+0x43/0xf0
entry_SYSCALL_64_after_hwframe+0x44/0xa9

Turns out the same case occurs also during boot up when kthreadd tries
to create threads before domains are attached so lets fix the comment.

Cc: Dietmar Eggemann <dietmar.eggemann@arm.com>
Cc: Morten Ramussen <morten.rasmussen@arm.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Juri Lelli <juri.lelli@redhat.com>
Cc: Vincent Guittot <vincent.guittot@linaro.org>
Cc: Patrick Bellasi <patrick.bellasi@arm.com>
Cc: Rohit Jain <rohit.k.jain@oracle.com>
Cc: kernel-team@android.com
Signed-off-by: Joel Fernandes (Google) <joel@joelfernandes.org>
---
v1->v2: Resending without "XXX" in subject since otherwise LKML thinks
its junk.

 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 54dc31e7ab9b..dd07794141d0 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -6665,7 +6665,7 @@ select_task_rq_fair(struct task_struct *p, int prev_cpu, int sd_flag, int wake_f
 
 	if (!sd) {
 pick_cpu:
-		if (sd_flag & SD_BALANCE_WAKE) { /* XXX always ? */
+		if (sd_flag & SD_BALANCE_WAKE) {
 			new_cpu = select_idle_sibling(p, prev_cpu, new_cpu);
 
 			if (want_affine)
-- 
2.17.0.921.gf22659ad46-goog

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH v2] sched: Remove obscure comment from select_task_rq_fair
  2018-05-28  1:24 [PATCH v2] sched: Remove obscure comment from select_task_rq_fair Joel Fernandes (Google)
@ 2018-05-28  7:15 ` Peter Zijlstra
  2018-05-28 20:54   ` Joel Fernandes
  0 siblings, 1 reply; 3+ messages in thread
From: Peter Zijlstra @ 2018-05-28  7:15 UTC (permalink / raw)
  To: Joel Fernandes (Google)
  Cc: linux-kernel, Joel Fernandes (Google),
	Dietmar Eggemann, Morten Ramussen, Ingo Molnar, Juri Lelli,
	Vincent Guittot, Patrick Bellasi, Rohit Jain, kernel-team

On Sun, May 27, 2018 at 06:24:47PM -0700, Joel Fernandes (Google) wrote:
>  This patch removes the obscure comment which was
> saying this path can be entered only for wake-balance.

The comment was meant to ask if we want to always do
select_idle_siblings() and not only on wakeups.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH v2] sched: Remove obscure comment from select_task_rq_fair
  2018-05-28  7:15 ` Peter Zijlstra
@ 2018-05-28 20:54   ` Joel Fernandes
  0 siblings, 0 replies; 3+ messages in thread
From: Joel Fernandes @ 2018-05-28 20:54 UTC (permalink / raw)
  To: Peter Zijlstra
  Cc: Joel Fernandes (Google),
	linux-kernel, Dietmar Eggemann, Morten Ramussen, Ingo Molnar,
	Juri Lelli, Vincent Guittot, Patrick Bellasi, Rohit Jain,
	kernel-team

On Mon, May 28, 2018 at 09:15:08AM +0200, Peter Zijlstra wrote:
> On Sun, May 27, 2018 at 06:24:47PM -0700, Joel Fernandes (Google) wrote:
> >  This patch removes the obscure comment which was
> > saying this path can be entered only for wake-balance.
> 
> The comment was meant to ask if we want to always do
> select_idle_siblings() and not only on wakeups.

Ok, thanks for the clarification. Makes sense, and sorry for the noise.

thanks,

 - Joel

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2018-05-28 20:54 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-28  1:24 [PATCH v2] sched: Remove obscure comment from select_task_rq_fair Joel Fernandes (Google)
2018-05-28  7:15 ` Peter Zijlstra
2018-05-28 20:54   ` Joel Fernandes

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.