Skip to contentSkip to conversation

2.4.x SMP Kernel Exception (Bug?)

DISCUSSION Aaron M. Folmsbee 1 participant 2 messages Apr 29, 2001 – Apr 30, 2001

lore
Share & tools
lore
#0 lore raw

All the 2.4.x kernels are failing on my dual Intel PII system with a kernel panic. I have tried everything I could (disable swap, setting memory size, build kernel with minimal options, etc..) and have been unable to boot the kernel so I suspect there may be a bug. The 2.4.x kernels build without SMP support boot without any problems at all.

The kernel message from the 2.4.4 version follows:

invalid operand: 0000

CPU: 0

EIP: 0010:[<c010c630>]
EFLAGS: 00010206
eax: 0183fbff ebx: cba52000 ecx: c02d0000 edx: cba52000
esi: c02d0000 edi: c02d0350 edp: 00000000 esp: c02d1f74
ds: 0018 es:0018 ss:0018
Process swapper (pid: 0, stackpage=c02d1000)

Stack:  c010581d cba52000 c0305800 cba52350 cba52000 cbd87a40 00000000
cba53e1c
  c0110e66 c02d1fd4 00000001 cdb87a40 c01051b0 cba52000 c02d0000 00000001
  c02d0000 00000030 00000000 c02d0000 c0309440 c01051b0 c02d0000 c02d0000
Call Trace:[<c010581d>] [<c0110e66>] [<c01051b0>] [<c01051b0>]
           [<c01051b0>] [<c010526e>] [<c0105000>] [<c01001cf>]
Code: 0f ae 82 90 03 00 00 db e2 eb 0c 90 8d 74 26 00 dd b2 90 03
Kernel panic: Attempted to kill the idle task!

In idle task - not syncing

Some info from the successfull uni-processor kernel startup:

Apr 27 18:50:09 GANDALF kernel: Linux version 2.4.3aaronUP (root@GANDALF)
(gcc version 2.96
20000731 (Red Hat Linux 7.1 2.96-81)) #1 Mon Apr 23 18:37:57 PDT 2001
Apr 27 18:50:09 GANDALF kernel: BIOS-provided physical RAM map:
Apr 27 18:50:09 GANDALF kernel:  BIOS-e820: 0000000000000000 -
000000000009fc00 (usable)
Apr 27 18:50:09 GANDALF kernel:  BIOS-e820: 000000000009fc00 -
00000000000a0000 (reserved)
Apr 27 18:50:09 GANDALF kernel:  BIOS-e820: 00000000000e0000 -
0000000000100000 (reserved)
Apr 27 18:50:09 GANDALF kernel:  BIOS-e820: 0000000000100000 -
000000000bff0000 (usable)
Apr 27 18:50:09 GANDALF kernel:  BIOS-e820: 000000000bff0000 -
000000000bff8000 (ACPI data)
Apr 27 18:50:09 GANDALF kernel:  BIOS-e820: 000000000bff8000 -
000000000c000000 (ACPI NVS)
Apr 27 18:50:09 GANDALF kernel:  BIOS-e820: 00000000fec00000 -
00000000fec01000 (reserved)
Apr 27 18:50:09 GANDALF kernel:  BIOS-e820: 00000000fee00000 -
00000000fee01000 (reserved)
Apr 27 18:50:09 GANDALF kernel:  BIOS-e820: 00000000fffe0000 -
0000000100000000 (reserved)
Apr 27 18:50:09 GANDALF kernel: Scan SMP from c0000000 for 1024 bytes.
Apr 27 18:50:09 GANDALF kernel: Scan SMP from c009fc00 for 1024 bytes.
Apr 27 18:50:09 GANDALF kernel: Scan SMP from c00f0000 for 65536 bytes.
Apr 27 18:50:09 GANDALF kernel: found SMP MP-table at 000fb650
Apr 27 18:50:09 GANDALF kernel: hm, page 000fb000 reserved twice.
Apr 27 18:50:09 GANDALF kernel: hm, page 000fc000 reserved twice.
Apr 27 18:50:09 GANDALF kernel: hm, page 000f6000 reserved twice.
Apr 27 18:50:09 GANDALF kernel: hm, page 000f7000 reserved twice.
Apr 27 18:50:09 GANDALF kernel: On node 0 totalpages: 49136
Apr 27 18:50:09 GANDALF kernel: zone(0): 4096 pages.
Apr 27 18:50:09 GANDALF kernel: zone(1): 45040 pages.
Apr 27 18:50:09 GANDALF kernel: zone(2): 0 pages.
Apr 27 18:50:09 GANDALF kernel: Intel MultiProcessor Specification v1.4
Apr 27 18:50:09 GANDALF kernel:     Virtual Wire compatibility mode.
Apr 27 18:50:09 GANDALF kernel: OEM ID: INTEL    Product ID: 440LX
APIC at: 0xFEE00000
Apr 27 18:50:09 GANDALF kernel: Processor #0 Pentium(tm) Pro APIC version 17
Apr 27 18:50:09 GANDALF kernel:     Floating point unit present.
Apr 27 18:50:09 GANDALF kernel:     Machine Exception supported.
Apr 27 18:50:09 GANDALF kernel:     64 bit compare & exchange supported.
Apr 27 18:50:09 GANDALF kernel:     Internal APIC present.
Apr 27 18:50:09 GANDALF kernel:     SEP present.
Apr 27 18:50:09 GANDALF kernel:     MTRR  present.
Apr 27 18:50:09 GANDALF kernel:     PGE  present.
Apr 27 18:50:09 GANDALF kernel:     MCA  present.
Apr 27 18:50:09 GANDALF kernel:     CMOV  present.
Apr 27 18:50:09 GANDALF kernel:     MMX  present.
Apr 27 18:50:09 GANDALF kernel:     Bootup CPU
Apr 27 18:50:09 GANDALF kernel: Processor #1 Pentium(tm) Pro APIC version 17
Apr 27 18:50:09 GANDALF kernel:     Floating point unit present.
Apr 27 18:50:09 GANDALF kernel:     Machine Exception supported.
Apr 27 18:50:09 GANDALF kernel:     64 bit compare & exchange supported.
Apr 27 18:50:09 GANDALF kernel:     Internal APIC present.
Apr 27 18:50:09 GANDALF kernel:     SEP present.
Apr 27 18:50:09 GANDALF kernel:     MTRR  present.
Apr 27 18:50:09 GANDALF kernel:     PGE  present.
Apr 27 18:50:09 GANDALF kernel:     MCA  present.
Apr 27 18:50:09 GANDALF kernel:     CMOV  present.
Apr 27 18:50:09 GANDALF kernel:     PAT  present.
Apr 27 18:50:09 GANDALF kernel:     PSE  present.
Apr 27 18:50:09 GANDALF kernel:     MMX  present.
Apr 27 18:50:09 GANDALF kernel:     FXSR  present.
Apr 27 18:50:09 GANDALF kernel: Bus #0 is PCI
Apr 27 18:50:09 GANDALF kernel: Bus #1 is PCI
Apr 27 18:50:09 GANDALF kernel: Bus #2 is ISA
Apr 27 18:50:09 GANDALF kernel: I/O APIC #2 Version 17 at 0xFEC00000.
...
Apr 27 18:50:09 GANDALF kernel: Processors: 2
Apr 27 18:50:09 GANDALF kernel: mapped APIC to ffffe000 (fee00000)
Apr 27 18:50:09 GANDALF kernel: mapped IOAPIC to ffffd000 (fec00000)
Apr 27 18:50:09 GANDALF kernel: Kernel command line: auto
BOOT_IMAGE=linux-aaron ro root=303
 BOOT_FILE=/boot/vmlinuz-2.4.3aaronUP
Apr 27 18:50:09 GANDALF kernel: Initializing CPU#0
Apr 27 18:50:09 GANDALF kernel: Detected 298.732 MHz processor.
Apr 27 18:50:09 GANDALF kernel: Console: colour VGA+ 80x25
Apr 27 18:50:09 GANDALF kernel: Calibrating delay loop... 596.37 BogoMIPS
Apr 27 18:50:09 GANDALF kernel: Memory: 190728k/196544k available (1230k
kernel code, 5428k
reserved, 501k data, 196k init, 0k highmem)
Apr 27 18:50:09 GANDALF kernel: Dentry-cache hash table entries: 32768
(order: 6, 262144 bytes)
Apr 27 18:50:09 GANDALF kernel: Buffer-cache hash table entries: 8192
(order: 3, 32768 bytes)
Apr 27 18:50:09 GANDALF kernel: Page-cache hash table entries: 65536 (order:
6, 262144 bytes)
Apr 27 18:50:09 GANDALF kernel: Inode-cache hash table entries: 16384
(order: 5, 131072 bytes)
Apr 27 18:50:09 GANDALF kernel: VFS: Diskquotas version dquot_6.4.0
initialized
Apr 27 18:50:09 GANDALF kernel: CPU: L1 I cache: 16K, L1 D cache: 16K
Apr 27 18:50:09 GANDALF kernel: CPU: L2 cache: 512K
Apr 27 18:50:09 GANDALF kernel: Intel machine check architecture supported.
Apr 27 18:50:09 GANDALF kernel: Intel machine check reporting enabled on
CPU#0.
Apr 27 18:50:09 GANDALF kernel: CPU: Intel Pentium II (Klamath) stepping 04
Apr 27 18:50:09 GANDALF kernel: Checking 'hlt' instruction... OK.
Apr 27 18:50:09 GANDALF kernel: POSIX conformance testing by UNIFIX
Apr 27 18:50:09 GANDALF kernel: enabled ExtINT on CPU#0
Apr 27 18:50:09 GANDALF kernel: ESR value before enabling vector: 00000004
Apr 27 18:50:09 GANDALF kernel: ESR value after enabling vector: 00000000
Apr 27 18:50:09 GANDALF kernel: ENABLING IO-APIC IRQs
Apr 27 18:50:09 GANDALF kernel: ...changing IO-APIC physical APIC ID to 2
... ok.
Apr 27 18:50:09 GANDALF kernel: Synchronizing Arb IDs.
Apr 27 18:50:09 GANDALF kernel: ..TIMER: vector=49 pin1=2 pin2=0
Apr 27 18:50:09 GANDALF kernel: testing the IO APIC.......................
Apr 27 18:50:09 GANDALF kernel:
Apr 27 18:50:09 GANDALF kernel: .................................... done.
Apr 27 18:50:09 GANDALF kernel: calibrating APIC timer ...
Apr 27 18:50:09 GANDALF kernel: ..... CPU clock speed is 298.7387 MHz.
Apr 27 18:50:09 GANDALF kernel: ..... host bus clock speed is 66.3860 MHz.
Apr 27 18:50:09 GANDALF kernel: cpu: 0, clocks: 663860, slice: 331930
Apr 27 18:50:09 GANDALF kernel:

CPU0<T0:663856,T1:331920,D:6,S:331930,C:663860>

#1 lore raw

----- Original Message -----
From: "Ville Herva" <[email protected]>
To: "Aaron M. Folmsbee" <[email protected]>
Sent: Sunday, April 29, 2001 12:39 AM
Subject: Re: 2.4.x SMP Kernel Exception (Bug?)

Quoted 1 line

Please feed it through ksymoops (see Documentation/oops-tracing.txt and

make

Quoted 3 lines

sure your System.map matches the kernel in question).

You are sure that your hardware is not faulty? Has it been running

reliably

Quoted 2 lines

with other kernels? What happens if you swap the CPU's and run in in UP mode? Have you run memtest86?

The hardware has run 2.3x SMP kernels successfully for over a year.

I tried running the 2.4.4 kernel that is crashing with the 'nosmp' option, and it booted ok.

The ksymoops output:

ksymoops 2.4.0 on i686 2.4.4. Options used
-V (default)
-k /proc/ksyms (default)
-l /proc/modules (default)
-o /lib/modules/2.4.4/ (default)
-m System.map (specified)

Warning (compare_maps): ksyms_base symbol __VERSIONED_SYMBOL(shmem_file_setup) not found in System.map. Ignoring ksyms_base entry
invalid operand: 0000

CPU: 0

EIP: 0010:[<c010c630>]
Using defaults from ksymoops -t elf32-i386 -a i386
EFLAGS: 00010206
eax: 0183fbff ebx: cba52000 ecx: c02d0000 edx: cba52000
esi: c02d0000 edi: c02d0350 edp: 00000000 esp: c02d1f74
ds: 0018 es:0018 ss:0018
Process swapper (pid: 0, stackpage=c02d1000)

Stack:  c010581d cba52000 c0305800 cba52350 cba52000 cbd87a40 00000000
cba53e1c
        c0110e66 c02d1fd4 00000001 cdb87a40 c01051b0 cba52000 c02d0000
00000001
        c02d0000 00000030 00000000 c02d0000 c0309440 c01051b0 c02d0000
c02d0000
           [<c01051b0>] [<c010526e>] [<c0105000>] [<c01001cf>]
Code: 0f ae 82 90 03 00 00 db e2 eb 0c 90 8d 74 26 00 dd b2 90 03
Quoted 1 line
Quoted 1 line

EIP; c010c630 <save_init_fpu+10/40> <=====

Code; c010c630 <save_init_fpu+10/40>
00000000 <_EIP>:
Code; c010c630 <save_init_fpu+10/40> <=====
0: 0f ae 82 90 03 00 00 fxsave 0x390(%edx) <=====
Code; c010c637 <save_init_fpu+17/40>
7: db e2 fnclex
Code; c010c639 <save_init_fpu+19/40>
9: eb 0c jmp 17 <_EIP+0x17> c010c647
<save_init_fpu+27/40>
Code; c010c63b <save_init_fpu+1b/40>
b: 90 nop
Code; c010c63c <save_init_fpu+1c/40>
c: 8d 74 26 00 lea 0x0(%esi,1),%esi
Code; c010c640 <save_init_fpu+20/40>
10: dd b2 90 03 00 00 fnsave 0x390(%edx)

Kernel panic: Attempted to kill the idle task!

1 warning issued. Results may not be reliable.