Oops! orz
Debian(etch)のカーネル(2.6.17-2)でシリアルコンソールを使うと死んだ。
BUG: unable to handle kernel NULL pointer dereference at virtual address 0000000c printing eip: b0202352 \*pde = 00000000 Oops: 0000 [#1] SMP Modules linked in: tsdev mousedev i2c_piix4 intel_agp evdev i2c_core agpgart snd_ens1371 snd_rawmidi snd_seq_device snd_ac97_codec snd_ac97_bus shpchp snd_pcm snd_timer snd snd_page_alloc es1371 gameport soundcore ac97_codec rtc serio_raw psmouse pci_hotplug parport_pc parport 8250_pnp floppy pcspkr ext3 jbd mbcache ide_cd cdrom generic piix sd_mod uhci_hcd ide_core usbcore mptspi mptscsih mptbase scsi_transport_spi scsi_mod pcnet32 mii thermal processor fan CPU: 0 EIP: 0060:[] Not tainted VLI EFLAGS: 00010206 (2.6.17-2-k7 #1) EIP is at uart_write_room+0x9/0x16 eax: bf1c0000 ebx: 00000006 ecx: bfe33050 edx: 00000000 esi: bfeb5000 edi: b1325c00 ebp: 00000006 esp: bfc25f18 ds: 007b es: 007b ss: 0068 Process S03udev (pid: 1994, threadinfo=bfc24000 task=bfe33050) Stack: b01f6591 b1325c00 bfb39680 00000282 00000000 bfe33050 b0116fb2 bfeb5138 bfeb5138 00000006 bfeb5000 00000006 00000006 b01f41ed 00000006 080f6408 bfb39680 b01f64b0 bfeb500c bfeb53e8 00000000 b01f4a62 bfb39680 bfb39680 Call Trace: write_chan+0xe1/0x293 default_wake_function+0x0/0xc tty_write+0x147/0x1d8 write_chan+0x0/0x293 redirected_tty_write+0x1c/0x6b redirected_tty_write+0x0/0x6b vfs_write+0xa1/0x140 sys_write+0x3c/0x63 sysenter_past_esp+0x54/0x75 Code: 09 08 8b 40 10 74 09 81 60 10 ff ff ff fd eb 07 81 48 10 00 00 00 02 8b 5e 68 89 f0 ff 53 2c 5b 5e c3 8b 80 80 01 00 00 8b 50 10 <8b> 42 0c 2b 42 08 48 25 ff 0f 00 00 c3 8b 80 80 01 00 00 8b 50 EIP: [ ] uart_write_room+0x9/0x16 SS:ESP 0068:bfc25f18
uart_write_room()でぬるぽ検出でシボンヌ。ググるとLKMLにもポストされてた。
カーネルのバグくせえ(´・ω・`)
修正もいっぱい入っている。
ということで、sidのカーネルに入れ替える。sidはkernel.orgのstable版である2.6.18.2。
ENABLING IO-APIC IRQs ..TIMER: vector=0x31 apic1=0 pin1=2 apic2=-1 pin2=-1 ..MP-BIOS bug: 8254 timer not connected to IO-APIC ...trying to set up timer (IRQ0) through the 8259A ... failed. ...trying to set up timer as Virtual Wire IRQ... failed. ...trying to set up timer as ExtINT IRQ...<6>spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. spurious APIC interrupt on CPU#0, should never happen. failed :(. Kernel panic - not syncing: IO-APIC + timer doesn't work! Boot with apic=debug and send a report. Then try booting with the 'noapic' option
今度はAPICかよヽ(`Д´)ノ
noapicオプションを付けて事なきを得た。
どうせシングルプロセッサ環境だし、APICなしでも(゚ε゚)キニシナイ!!
linuxのAPIC周りってまだ怪しいんだっけ・・・。