sched: Optimize branch hint in pick_next_task_fair()
authorTim Blechmann <tim@klingt.org>
Tue, 24 Nov 2009 10:55:45 +0000 (11:55 +0100)
committerIngo Molnar <mingo@elte.hu>
Tue, 24 Nov 2009 11:18:12 +0000 (12:18 +0100)
Branch hint profiling on my nehalem machine showed 90%
incorrect branch hints:

  15728471 158903754  90 pick_next_task_fair
  sched_fair.c    1555

Signed-off-by: Tim Blechmann <tim@klingt.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
LKML-Reference: <4B0BBBB1.2050100@klingt.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
kernel/sched_fair.c

index f28a2671a1a66bda87ed1b217f65c8bf9459c820..24086e7e75937951261359ba09ed377a8ea587d0 100644 (file)
@@ -1704,7 +1704,7 @@ static struct task_struct *pick_next_task_fair(struct rq *rq)
        struct cfs_rq *cfs_rq = &rq->cfs;
        struct sched_entity *se;
 
-       if (unlikely(!cfs_rq->nr_running))
+       if (!cfs_rq->nr_running)
                return NULL;
 
        do {