[#3898] showing processsor state via magic sysrq crashes the kernel
Submitted By: Mike Frysinger
Open Date
2008-02-14 21:51:32 Close Date
2008-03-17 19:20:43
Priority:
Medium Assignee:
Robin Getz
Status:
Closed Fixed In Release:
N/A
Found In Release:
N/A Release:
linux-2.6.24.2
Category:
N/A Board:
N/A
Processor:
N/A Silicon Revision:
Is this bug repeatable?:
Yes Resolution:
Fixed
Uboot version or rev.:
Toolchain version or rev.:
App binary format:
N/A
Summary: showing processsor state via magic sysrq crashes the kernel
Details:
with current trunk, enabling magic sysrq and then trying to show the pc (break+p) will crash the kernel:
root:/> SysRq : Show Regs
SEQUENCER STATUS: Not tainted
SEQSTAT: 00002000 IPEND: ffff SYSCFG: 0006
HWERRCAUSE: 0x0
EXCAUSE : 0x0
physical IVG6 asserted : <0xffa00df4> { _evt_timer + 0x0 }
physical IVG7 asserted : <0xffa00e0c> { _evt_evt7 + 0x0 }
physical IVG8 asserted : <0xffa00e18> { _evt_evt8 + 0x0 }
physical IVG9 asserted : <0xffa00e24> { _evt_evt9 + 0x0 }
physical IVG10 asserted : <0xffa00e30> { _evt_evt10 + 0x0 }
physical IVG11 asserted : <0xffa00e3c> { _evt_evt11 + 0x0 }
physical IVG12 asserted : <0xffa00e48> { _evt_evt12 + 0x0 }
physical IVG13 asserted : <0xffa00e54> { _evt_evt13 + 0x0 }
physical IVG14 asserted : <0xffa00ae8> { _evt14_softirq + 0x0 }
physical IVG15 asserted : <0xffa00e60> { _evt_system_call + 0x0 }
logical irq 6 mapped : <0xffa00250> { _timer_interrupt + 0x0 }
logical irq 18 mapped : <0x00095bf4> { _bfin_serial_rx_int + 0x0 }
logical irq 19 mapped : <0x00095e10> { _bfin_serial_tx_int + 0x0 }
logical irq 24 mapped : <0x0009eb90> { _bf537mac_interrupt + 0x0 }
RETE: <0x00000000> { _run_init_process + 0xfffff000 }
BUG: scheduling while atomic: swapper/0/0x04010000
SEQUENCER STATUS: Not tainted
SEQSTAT: 00002000 IPEND: ffff SYSCFG: 0006
HWERRCAUSE: 0x0
EXCAUSE : 0x0
physical IVG6 asserted : <0xffa00df4> { _evt_timer + 0x0 }
physical IVG7 asserted : <0xffa00e0c> { _evt_evt7 + 0x0 }
physical IVG8 asserted : <0xffa00e18> { _evt_evt8 + 0x0 }
physical IVG9 asserted : <0xffa00e24> { _evt_evt9 + 0x0 }
physical IVG10 asserted : <0xffa00e30> { _evt_evt10 + 0x0 }
physical IVG11 asserted : <0xffa00e3c> { _evt_evt11 + 0x0 }
physical IVG12 asserted : <0xffa00e48> { _evt_evt12 + 0x0 }
physical IVG13 asserted : <0xffa00e54> { _evt_evt13 + 0x0 }
physical IVG14 asserted : <0xffa00ae8> { _evt14_softirq + 0x0 }
physical IVG15 asserted : <0xffa00e60> { _evt_system_call + 0x0 }
logical irq 6 mapped : <0xffa00250> { _timer_interrupt + 0x0 }
logical irq 18 mapped : <0x00095bf4> { _bfin_serial_rx_int + 0x0 }
logical irq 19 mapped : <0x00095e10> { _bfin_serial_tx_int + 0x0 }
logical irq 24 mapped : <0x0009eb90> { _bf537mac_interrupt + 0x0 }
RETE: <0x00000000> { _run_init_process + 0xfffff000 }
RETN: <0x008ae000> /* unknown address */
RETX: <0x001710a0> { _bfin_init_mmr_debugfs + 0x4f8 }
RETS: <0xffa00216> { _cpu_idle + 0x12 }
PC : <0xffa00244> { _default_idle + 0x28 }
PROCESSOR STATE:
R0 : 00000000 R1 : 0000ffff R2 : 00000008 R3 : 00000065
R4 : 00000000 R5 : 00000000 R6 : 00000000 R7 : 00148884
P0 : ffa00a08 P1 : 00168000 P2 : 00168000 P3 : 00148890
P4 : 001819fc P5 : 00156f08 FP : 00158674 SP : 00169ee0
LB0: ffa018f8 LT0: ffa018f6 LC0: 00000000
LB1: 00170aa3 LT1: 00170aa2 LC1: 00000000
B0 : 00000000 L0 : 00000000 M0 : 00000000 I0 : 20c58d00
B1 : 00000000 L1 : 00000000 M1 : 00000000 I1 : 00000000
B2 : 00000000 L2 : 00000000 M2 : 00000000 I2 : 00000000
B3 : 00000000 L3 : 00000000 M3 : 00000000 I3 : 00000000
A0.w: 000fffff A0.x: 00000000 A1.w: 00000290 A1.x: 00000000
USP : 0016a000 ASTAT: 02002020
NULL pointer access (probably)
Kernel OOPS in progress
Deferred Exception context
Double Fault
Kernel OOPS in progress
Deferred Exception context
No Valid process in current context
return address: [0x00003d2a]; contents of:
0x00003d00: 0c00 1070 482f 1c55 61f9 a0a8 5408 0808
0x00003d10: 1877 e140 0012 e100 2c18 e300 5e59 3046
0x00003d20: c682 0f98 4f6f 320f 914a [e410] 0030 0c00
0x00003d30: 1850 0000 0000 e410 0027 0c00 184a e140
SEQUENCER STATUS: Not tainted
SEQSTAT: 00062027 IPEND: ffa008fe SYSCFG: 0006
HWERRCAUSE: 0x18
EXCAUSE : 0x27
physical IVG6 asserted : <0xffa00df4> { _evt_timer + 0x0 }
physical IVG7 asserted : <0xffa00e0c> { _evt_evt7 + 0x0 }
physical IVG11 asserted : <0xffa00e3c> { _evt_evt11 + 0x0 }
logical irq 6 mapped : <0xffa00250> { _timer_interrupt + 0x0 }
logical irq 18 mapped : <0x00095bf4> { _bfin_serial_rx_int + 0x0 }
logical irq 19 mapped : <0x00095e10> { _bfin_serial_tx_int + 0x0 }
logical irq 24 mapped : <0x0009eb90> { _bf537mac_interrupt + 0x0 }
RETE: <0x00000000> { _run_init_process + 0xfffff000 }
RETN: <0x03366568> [ klogd + 0x66568 ]
RETX: <0x00003d2a> { _dump_bfin_process + 0x46 }
RETS: <0x00003d1e> { _dump_bfin_process + 0x3a }
PC : <0xffa008fe> { _system_call + 0x22 }
DCPLB_FAULT_ADDR: <0x000000c0> /* Maybe null pointer? */
ICPLB_FAULT_ADDR: <0x00003d2a> { _dump_bfin_process + 0x46 }
PROCESSOR STATE:
R0 : 03366568 R1 : 00000001 R2 : 0000001f R3 : 0000001f
R4 : 03319bc4 R5 : 0000100d R6 : 00000003 R7 : 03366000
P0 : 0000000a P1 : 03366000 P2 : 00000000 P3 : 03366d64
P4 : ffe02014 P5 : 03366640 FP : 03366804 SP : 0336648c
LB0: 0330c7ee LT0: 0330c7ee LC0: 00000000
LB1: 0330b7ed LT1: 0330b7ec LC1: 00000000
B0 : 00000000 L0 : 00000000 M0 : 00000000 I0 : 03366e74
B1 : 00000000 L1 : 00000000 M1 : 00000000 I1 : 0335c04c
B2 : 00000000 L2 : 00000000 M2 : 00000000 I2 : 00000000
B3 : 00000000 L3 : 00000000 M3 : 00000000 I3 : 00000000
A0.w: 00000000 A0.x: 00000000 A1.w: 00000000 A1.x: 00000000
USP : 03366eb4 ASTAT: 02003004
Kernel panic - not syncing: Double Fault - unrecoverable event
Follow-ups
--- Robin Getz 2008-03-13 15:37:20
I see this on the branch as well as trunk, and I think I broke it - so I will
fix it.
-Robin
--- Robin Getz 2008-03-17 17:57:11
This should be fixed on the trunk and 2008R1 branch.
Mike - can you test out?
-Robin
--- Mike Frysinger 2008-03-17 19:20:43
works for me
Files
Changes
Commits
Dependencies
Duplicates
Associations
Tags
File Name File Type File Size Posted By
No Files Were Found