On Tue, 24 Apr 2007 22:23:58 +0400 Alexey Dobriyan <[EMAIL PROTECTED]> wrote:
> ... > CPU1: Thermal monitoring enabled (TM2) > Intel(R) Core(TM)2 CPU 6400 @ 2.13GHz stepping 02 > checking TSC synchronization [CPU#0 -> CPU#1]: passed. > Brought up 2 CPUs > migration_cost=9999 > BUG: at arch/x86_64/kernel/../../i386/kernel/sched-clock.c:175 > init_sched_clock() > > Call Trace: > [<ffffffff8020ae7a>] show_trace+0x34/0x4f > [<ffffffff8020aea7>] dump_stack+0x12/0x17 > [<ffffffff8046dddf>] init_sched_clock+0x59/0x8a > [<ffffffff8046a608>] kernel_init+0x167/0x2dc > [<ffffffff8020a4c8>] child_rip+0xa/0x12 > > It didn't happen in 2.6.21-rc6-mm1 nor in mainline. It seems to expect that init_sched_clock() will be called before SMP bringup, but init_sched_clock() should _always_ be called _after_ SMP bringup - it's core_initcall. Confused. > And migration cost was 15. > However, box boots to the end as usual. /proc/cpuinfo shows 2 CPUs. > > [reboots box] > Now migration cost is 19999 and same trace. That's a consequence of the same thing: we need a working sched_clock() to calibrate the migration costs, but init_sched_clock() hasn't run yet. > ------------------------------------------------------------------------------ > Should-be-relevant config options: > > CONFIG_X86_64=y > CONFIG_64BIT=y > CONFIG_X86=y > CONFIG_GENERIC_TIME=y > CONFIG_GENERIC_TIME_VSYSCALL=y > CONFIG_MCORE2=y > CONFIG_X86_TSC=y > CONFIG_X86_GOOD_APIC=y > CONFIG_X86_HT=y > CONFIG_X86_IO_APIC=y > CONFIG_X86_LOCAL_APIC=y > CONFIG_SMP=y > CONFIG_SCHED_MC=y > CONFIG_PREEMPT=y > CONFIG_PREEMPT_BKL=y > CONFIG_NR_CPUS=2 > CONFIG_HPET_TIMER=y > CONFIG_HZ=100 > CONFIG_TRACE_IRQFLAGS_SUPPORT=y > CONFIG_DETECT_SOFTLOCKUP=y CONFIG_SCHED_SMT and CONFIG_SCHED_MC might be significant here. Anyway, I'll cc Andi and run away. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/