X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=kernel%2Fsched.c;h=5f102e6c7a4ca2c1f9cb041cc03744c414c50069;hb=f31f0cc2f0b7527072d94d02da332d9bb8d7d94c;hp=0dc757246d89b02c96593df44ff8d75acb93e711;hpb=f630fe2817601314b2eb7ca5ddc23c7834646731;p=powerpc.git diff --git a/kernel/sched.c b/kernel/sched.c index 0dc757246d..5f102e6c7a 100644 --- a/kernel/sched.c +++ b/kernel/sched.c @@ -3547,7 +3547,7 @@ need_resched_nonpreemptible: } } next->sleep_type = SLEEP_NORMAL; - if (dependent_sleeper(cpu, rq, next)) + if (rq->nr_running == 1 && dependent_sleeper(cpu, rq, next)) next = rq->idle; switch_tasks: if (next == rq->idle) @@ -3566,7 +3566,7 @@ switch_tasks: sched_info_switch(prev, next); if (likely(prev != next)) { - next->timestamp = now; + next->timestamp = next->last_ran = now; rq->nr_switches++; rq->curr = next; ++*switch_count;