Messages in this thread | | | Subject | Re: dynticks: CONFIG_VIRT_CPU_ACCOUNTING + CONFIG_CONTEXT_TRACKING breaks accounting on core2 CPUs only | From | Mike Galbraith <> | Date | Tue, 14 May 2013 16:07:20 +0200 |
| |
On Tue, 2013-05-14 at 02:57 +0200, Frederic Weisbecker wrote: > On Sun, May 12, 2013 at 10:17:49AM +0200, Mike Galbraith wrote: > > Greetings, > > > > Turning on new NO_HZ feature on my Q6600 box in master, I see that tasks > > accrue zero utime/stime. However, the same exact kernel on E5620 box > > works fine, so it would appear there's a CPU dependency somewhere. > > Ah indeed, I just managed to reproduce the same issue. > > > > > Is core2 expected to go dysfunctional with context tracking enabled? > > CONFIG_VIRT_CPU_ACCOUNTING alone works fine in 3.9-stable, turn on > > CONFIG_CONTEXT_TRACKING_FORCE, and CPU accounting stops working on core2 > > boxen only, same exact kernel continues to work just fine on E5620 > > (Westmere) box. > > There was no known issue with core2. The box where I'm seeing the it > is a Phenom quad core that had NR_CPUS=2. May be the issue is more > likely to happen with this low number. I don't know. > > I'm investigating further.
So with CONFIG_HAVE_UNSTABLE_SCHED_CLOCK, you can't mix sched_clock() (pure tsc) with local_clock()/sched_clock_cpu(cpu). The former is always quite a bit ahead of the later, so mixing clocks is a nogo on crusty old (but beloved) core2 box.
-Mike
| |