• Ingo Molnar's avatar
    x86: do not crash on non-Geode PCs in TSC probe · f97586b6
    Ingo Molnar authored
    with this fix Geode kernels can be booted (and QA-ed) on generic PCs.
    
    otherwise it crashes and burns during early bootup:
    
    Detected 2160.212 MHz processor.
    general protection fault: 0000 [#1]
    PREEMPT SMP
    Modules linked in:
    CPU:    0
    EIP:    0060:[<c09071f6>]    Not tainted VLI
    EFLAGS: 00010002   (2.6.23-rc9 #90)
    EIP is at tsc_init+0xa6/0x150
    eax: 00000001   ebx: c1dce000   ecx: 00001900   edx: 00000001
    esi: 00051000   edi: 00051000   ebp: c08fdfc4   esp: c08fdfa4
    ds: 007b   es: 007b   fs: 00d8  gs: 0000  ss: 0068
    Process swapper (pid: 0, ti=c08fc000 task=c082a180 task.ti=c08fc000)
    Stack: c076b870 00000870 000000d4 0000001d c0831e80 c1dce000 00051000 00051000
           c08fdfcc c09053f8 c08fdff8 c09045ff 000001e2 c09040a0 00051000 00000020
           0004e500 c0932140 00020800 00099800 c08ed000 01409007 00000000
    Call Trace:
     [<c010517a>] show_trace_log_lvl+0x1a/0x30
     [<c0105246>] show_stack_log_lvl+0xb6/0x100
     [<c0105732>] show_registers+0x212/0x3a0
     [<c0105aa4>] die+0x104/0x220
     [<c0105f5f>] do_general_protection+0x1ef/0x2b0
     [<c06699f2>] error_code+0x72/0x78
     [<c09053f8>] time_init+0x8/0x20
     [<c09045ff>] start_kernel+0x1af/0x320
     [<00000000>] 0x0
     =======================
    Code: 31 d2 b8 00 00 09 3d f7 35 2c 70 9b c0 a3 04 95 8f c0 e8 ce 4e 99 ff b8 e0 45 93 c0 e8 94 b1 c5 ff e8 7f 3d 80 ff b9 00 19 00 00 <0f> 32 f6 c4 01 74 07 83 25 24 ce 82 c0 fd 8b 0d 20 ce 82 c0 b8
    EIP: [<c09071f6>] tsc_init+0xa6/0x150 SS:ESP 0068:c08fdfa4
    Kernel panic - not syncing: Attempted to kill the idle task!
    Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
    Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
    f97586b6
tsc_32.c 9.01 KB