diff --git a/[refs] b/[refs] index 55e397073058..373f02782e0e 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 5f9fa8a62d6a98f5cb2ee2e00b85bfe95e45888d +refs/heads/master: 8ced5f69e4bc09adcc6442e090e2e64c197246cf diff --git a/trunk/kernel/sched.c b/trunk/kernel/sched.c index 67d9d1799d86..c6e551de795b 100644 --- a/trunk/kernel/sched.c +++ b/trunk/kernel/sched.c @@ -488,7 +488,12 @@ unsigned long long cpu_clock(int cpu) local_irq_save(flags); rq = cpu_rq(cpu); - update_rq_clock(rq); + /* + * Only call sched_clock() if the scheduler has already been + * initialized (some code might call cpu_clock() very early): + */ + if (rq->idle) + update_rq_clock(rq); now = rq->clock; local_irq_restore(flags);