To get a log, I started Staroffice instalation with ./setup /net. Then
I switched to a text console so that the kernel message could be seen.
After some seconds the machine was hang, including no ping.
The message was copied by hand, as well as symbol translation. Please
forgive any mistakes. Address are hexadecimal, but offsets are decimal.
Kernel version is 2.2.13pre13 from Alan. I tried it following advise
Wade Hampton. I the same crash with 2.2.12. I can give you the logs
if you wish.
For those that did not read my previous message, this a SMP machine,
two processors (Pentium II).
Here is the log:
Unable to handle kernel NULL deference at virtual address 0x10
current->tss.cr3 = 0x1037000 %cr3=0x1037000
*pde=0
Ooops = 0
CPU=0
EIP=10:0xc0113dce (__wake_up+38)
EFLAGS=0x0010007
EAX=0xC0CA3D64
EBX=0x18
ECX=0xC0CA3D5C
EDX=3
ESI=0xC0CA3D60
EDI=3
EBP=0xC0CA3EC8
ESP=0xC0CA3EC4
DS=ES=SS=0x18
Process cdplayer_applet (pid:624, process nr: 44, stackpage: 0xC0CA3000)
Stack: 0xC3FD8820 0xC0CA3ED0 0xC0113E43 0xC026B884 0xC01DB4DC 0xC0CA3D5C
0x1CE 0xC3FD93A4 0xC01DF79C 0xC017B4C8 0xC3FD93A4 0x16 0xC3FD93A4 1 0xC026B910
0xC018E53A 1 0xC3FD8820 0x10 0xC3FD93D8 0xC018F103 1 0xC026B910
Call trace:
0xC01DB4DC __up_wakeup+8
0xC01DF79C stext_lock + 9352 Note: this call actually comes from
end_that_request_last (ll_rw_blk.c)
This function calls the inline fn up().
up() does some assembly hacks that
confuse this trace.
0xC017B4C8 ide_end_request+112
0xC018E53A cdrom_end_request+98
0xC018F103 cdrom_pc_intr+219
0xC017CB2F ide_intr+199
0xC018F028 cdrom_read_start+136
0xC010C302 handle_IRQ_event+90
0xC0110E85 do_edge_ioapic_IRQ+113
0xC010C473 do_IRQ+59
0xC010AF48 common_interrupt+24
Code: 8B 13 8B 5B 04 8B 02 85 C7 74 F1 39 F3 75 13 F0 FF 0D 8C 98
Disassembly (from objdump -d sched.o)
start from __wake_up+16:
a84: 74 32 je ab8 <__wake_up+0x54>
a86: 39 f3 cmpl %esi,%ebx
a88: 74 2e je ab8 <__wake_up+0x54>
Point of crash:
a8a: 8b 13 movl (%ebx),%edx
a8c: 8b 5b 04 movl 0x4(%ebx),%ebx
a8f: 8b 02 movl (%edx),%eax
a91: 85 c7 testl %eax,%edi
a93: 74 f1 je a86 <__wake_up+0x22>
a95: 39 f3 cmpl %esi,%ebx
a97: 75 13 jne aac <__wake_up+0x48>
a99: f0 ff 0d 00 00 00 00 lock decl 0x0
aa0: 89 d0 movl %edx,%eax
aa2: e8 3d f7 ff ff call 1e4 <wake_up_process>
Opcodes from kernel log appear to match with those from objdump.
Source code from GDB (source file kernel/sched.c, line number in the first
column):
897 while (next != head) {
point of crash:
898 p = next->task;
899 next = next->next;
Thanks,
Ramon
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/