>
>*snip*
>> The first step is to be on console at lockup time (luck ;), and press
>> SYSRQ+ALTRIGHT+P and write on paper all different EIP address, then reboot
>> and resolve them through system.map.
>
>What do you mean by resolve them? Sorry If I don't know enough to even
>attempt what I am talking about but I'd like to try.
I'll produce an example. You'll see on the console:
EIP: 0010:[<c0107298>] EFLAGS: 00003246
EAX: 00000000 EBX: c009c000 ECX: c009c000 EDX: c01ae780
ESI: c009c000 EDI: c01e48e0 EBP: c01c7fac DS: 0018 ES: 0018
CR0: 8005003b CR2: 0827908c CR3: 00101000
So the interesting number is c0107298.
Then open the System.map of the running kernel (linux/System.map after a
compile) and browse the symbols:
c0107248 T disable_hlt
c0107250 T enable_hlt
c0107258 T cpu_idle
^^^^^^^^
c01072ac T sys_idle
c01072d0 T machine_restart
c01073c8 T machine_halt
c01073cc T machine_power_off
c01073d0 T show_regs
The interesting number c0107298 means that the CPU was running in the
kernel in the function cpu_idle().
Andrea Arcangeli
-
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/