sched: Fix select_idle_sibling() regression in selecting an idle SMT sibling
authorPeter Zijlstra <peterz@infradead.org>
Thu, 15 Dec 2011 19:47:00 +0000 (11:47 -0800)
committerIngo Molnar <mingo@elte.hu>
Fri, 16 Dec 2011 08:44:58 +0000 (09:44 +0100)
commitab2789213d224202237292d78aaa0c386c7b28b2
treeda6a28ca9a2eddad554742361e496764f17682a3
parent75fc2d3797c47f5f70ca71c41c342c352845cd06
sched: Fix select_idle_sibling() regression in selecting an idle SMT sibling

Mike Galbraith reported that this recent commit:

   commit 4dcfe1025b513c2c1da5bf5586adb0e80148f612
   Author: Peter Zijlstra <peterz@infradead.org>
   Date:   Thu Nov 10 13:01:10 2011 +0100

       sched: Avoid SMT siblings in select_idle_sibling() if possible

stopped selecting an idle SMT sibling when there are no idle
cores in a single socket system.

Intent of the select_idle_sibling() was to fallback to an idle
SMT sibling, if it fails to identify an idle core. But this
fallback was not happening on systems where all the scheduler
domains had `SD_SHARE_PKG_RESOURCES' flag set.

Fix it. Slightly bigger patch of cleaning all these goto's etc
is queued up for the next release.

Reported-by: Mike Galbraith <efault@gmx.de>
Reported-by: Alex Shi <alex.shi@intel.com>
Signed-off-by: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
Link: http://lkml.kernel.org/r/1323978421.1984.244.camel@sbsiddha-desk.sc.intel.com
Signed-off-by: Ingo Molnar <mingo@elte.hu>
kernel/sched_fair.c