最剛好掏出塵封的mini2440,弄了個buildroot 2016編譯mini2440 linux內核 3.0.4版本
出現如下問題:
Unable to handle kernel paging request at virtual address 30c39280
pgd = c0004000[30c39280] *pgd=00000000
Internal error: Oops: 5 [#1]
last sysfs file:
Modules linked in:
CPU: 0 Not tainted (2.6.32.63 #2)
PC is at kmem_cache_alloc+0x30/0x88
LR is at con_insert_unipair+0x34/0xdc
pc : [<c008715c>] lr : [<c019bd4c>] psr: 20000093
sp : c3823f00 ip : 0000005f fp : 00000003
r10: c0417c34 r9 : c03d3644 r8 : 00000001
r7 : 000000d0 r6 : 00000080 r5 : a0000013 r4 : 30c39280
r3 : 00000000 r2 : a0000093 r1 : 000000d0 r0 : c03bc40c
Flags: nzCv IRQs off FIQs on Mode SVC_32 ISA ARM Segment kernel
Control: c000717f Table: 30004000 DAC: 00000017
Process swapper (pid: 1, stack limit = 0xc3822270)
Stack: (0xc3823f00 to 0xc3824000)
3f00: c03bc40c 000000d0 0000005f 0000f804 c3929600 0000005f 0000001f c019bd4c
3f20: c03d364a c3801000 c3929600 0000005f 00000000 c019c940 0000005f c03d364a
3f40: 00000014 00000000 00000014 c0418010 c00187b4 00000000 c3822030 00000000
3f60: 00000000 c0018f48 00000000 00000000 c0417d34 c00193b8 c036a2b4 c016b278
3f80: 20000013 c04178a0 00000000 c03e34c0 c00187b4 c0018884 c03477cf 00000002
3fa0: 00a10e78 00a10e78 00000002 c002837c 000000cc 00000000 00a10e78 00000002
3fc0: 00000054 c00219dc c0021b9c 00000000 00000000 00000000 00000000 c00089b0
3fe0: 00000000 00000000 c000890c 00000000 00000000 c00296f4 ffffffff ffffffff
[<c008715c>] (kmem_cache_alloc+0x30/0x88) from [<c019bd4c>] (con_insert_unipair+0x34/0xdc)
[<c019bd4c>] (con_insert_unipair+0x34/0xdc) from [<c019c940>] (con_set_default_unimap+0xc4/0x14c)
[<c019c940>] (con_set_default_unimap+0xc4/0x14c) from [<c0018f48>] (console_map_init+0x38/0x4c)
[<c0018f48>] (console_map_init+0x38/0x4c) from [<c00193b8>] (vty_init+0x120/0x15c)
[<c00193b8>] (vty_init+0x120/0x15c) from [<c0018884>] (tty_init+0xd0/0x104)
[<c0018884>] (tty_init+0xd0/0x104) from [<c002837c>] (do_one_initcall+0x5c/0x190)
[<c002837c>] (do_one_initcall+0x5c/0x190) from [<c00089b0>] (kernel_init+0xa4/0x110)
[<c00089b0>] (kernel_init+0xa4/0x110) from [<c00296f4>] (kernel_thread_exit+0x0/0x8)
Code: e5904080 e5906090 e3540000 1590308c (17943103)
---[ end trace e06eb57aa385dd0b ]---
Kernel panic - not syncing: Attempted to kill init!
[<c002d598>] (unwind_backtrace+0x0/0xcc) from [<c02c2f48>] (panic+0x3c/0x110)
[<c02c2f48>] (panic+0x3c/0x110) from [<c003d534>] (do_exit+0x60/0x5b8)
[<c003d534>] (do_exit+0x60/0x5b8) from [<c002c39c>] (die+0x150/0x174)
[<c002c39c>] (die+0x150/0x174) from [<c02c2e5c>] (__do_kernel_fault.part.3+0x54/0x64)
[<c02c2e5c>] (__do_kernel_fault.part.3+0x54/0x64) from [<c002e558>] (do_page_fault+0x1c4/0x1dc)
[<c002e558>] (do_page_fault+0x1c4/0x1dc) from [<c0028220>] (do_DataAbort+0x34/0x98)
[<c0028220>] (do_DataAbort+0x34/0x98) from [<c00288e0>] (__dabt_svc+0x40/0x60)
Exception stack(0xc3823eb8 to 0xc3823f00)
找了很久,原因未知,先留個念想。
但最終通過更換gcc版本解決:4.8.x -> 4.5.4
求教?!