当前位置: 技术问答>linux和unix
LINUX的启动错误
来源: 互联网 发布时间:2015-10-19
本文导语: 各位大虾: 小弟把kernel和文件系统都烧写到flash中了,在启动的时候出现如下错误:Uncompressing Linux...................................................................Linux version 2.6.9-intc1 (root@localhost.localdomain) (gcc version 3.4.3) #2...
各位大虾:
小弟把kernel和文件系统都烧写到flash中了,在启动的时候出现如下错误:Uncompressing Linux...................................................................Linux version 2.6.9-intc1 (root@localhost.localdomain) (gcc version 3.4.3) #2 Thu Jan5CPU: XScale-PXA270 [69054114] revision 4 (ARMv5TE)
CPU: D undefined 5 cache
CPU: I cache: 32768 bytes, associativity 32, 32 byte lines, 32 sets
CPU: D cache: 32768 bytes, associativity 32, 32 byte lines, 32 sets
Machine: Intel HCDDBBVA0 Development Platform (aka Mainstone)
Memory policy: ECC disabled, Data cache writeback
Run Mode clock: 208.00MHz (*16)
Turbo Mode clock: 520.00MHz (*2.5, active)
Memory clock: 208.00MHz (/2)
System bus clock: 208.00MHz
Built 1 zonelists
Kernel command line: root=/dev/mtdblock2 rootfstype=jffs2 ip=192.168.1.101:192.168.1.MPID hash table entries: 1024 (order: 10, 16384 bytes)
Console: colour dummy device 80x30
Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
Memory: 128MB = 128MB total
Memory: 126976KB available (2205K code, 463K data, 96K init)
Unable to handle kernel NULL pointer dereference at virtual address 00000084
pgd = c0004000---------------------------------------------------------------错误处!~!!!
[00000084] *pgd=00000000
Internal error: Oops: 8f5 [#1]
Modules linked in:
CPU: 0
PC is at alloc_arraycache+0x5c/0x70
LR is at cache_alloc_refill+0x1cc/0x3f4
pc : [] lr : [] Not tainted
sp : c025bf48 ip : c025bf04 fp : c025bf64
r10: 00000000 r9 : c02aab38 r8 : 00000000
r7 : 0000000c r6 : 00000018 r5 : 00000070 r4 : 00000080
r3 : 00000000 r2 : c03ff290 r1 : c03ff290 r0 : 00000080
Flags: nzCv IRQs on FIQs off Mode SVC_32 Segment kernel
Control: 397F Table: A0004000 DAC: 0000001D
Process swapper (pid: 0, stack limit = 0xc025a1a0)
Stack: (0xc025bf48 to 0xc025c000)
bf40: 00000001 00000018 c02bca20 0000000c c025bf90 c025bf68
bf60: c0059918 c0058de0 c02bcaa0 00000000 c02bca20 c03ff5a0 00000000 c026017c
bf80: c026023c c025bfa4 c025bf94 c0059ae4 c00598c8 c02bca20 c025bfe0 c025bfa8
bfa0: c000f770 c0059a98 00000000 00000000 00000060 000001cf c02bb6d0 c02bb6d0
bfc0: c02a1fa8 c02a1fa4 c025cf94 69054114 a001a9ec c025bffc c025bfe4 c00086c4
bfe0: c000f4ec c00082e0 c02a1fb8 c02bb6d0 00000000 c025c000 c0008080 c00085e0
Backtrace:
[] (alloc_arraycache+0x0/0x70) from [] (do_tune_cpucache+0x5c/0x1) r7 = 0000000C r6 = C02BCA20 r5 = 00000018 r4 = 00000001
[] (do_tune_cpucache+0x0/0x1d0) from [] (enable_cpucache+0x58/0x7) r8 = C026023C r7 = C026017C r6 = 00000000 r5 = C03FF5A0
r4 = C02BCA20
[] (enable_cpucache+0x0/0x7c) from [] (kmem_cache_init+0x290/0x31) r4 = C02BCA20
[] (kmem_cache_init+0x0/0x31c) from [] (start_kernel+0xf0/0x184)
[] (start_kernel+0x0/0x184) from [] (__mmap_switched+0x0/0x2c)
r4 = C02BB6D0
Code: ebfffe36 e2504000 0a000003 e3a03000 (e98400c0)
Kernel panic - not syncing: Attempted to kill the idle task!
大家有遇见过类似的问题吗?
我先说下我的操作过程:
1 传文件系统到RAM中
blob> tftp rootfs_x32_16M.jffs2
TFTPing rootfs_x32_16M.jffs2........OK
received 32770 blocks (16777216 bytes)
tftp_cmd: file 'rootfs_x32_16M.jffs2' loaded via TFTP to
address 0xa1000000
2 烧写文件系统到FLASH中
blob> fwrite 0xa1000000 0x240000 0x1000000
Erasing 64 blocks at 0x00240000:.........
Flashing 0x01000000 bytes at 0x00240000
意思是把RAM中0xa1000000 的烧写到FLASH的0x240000 开始的,大小为0x1000000(16M)
3 erasing the remaining flash
blob> ferase 0x1240000 0xdc0000
Erasing 55 block at 0x01240000:..........
4 upload the kernel
blob> tftp zImage.vga
5 burn the uploaded kernel image in RAM on to flash
blob> fwrite 0xa1000000 0x40000 0x200000
注意:这里是2M的大小
我的kernel镜象是1.22M
是不是我的kernel大于1M了的原因?
小弟把kernel和文件系统都烧写到flash中了,在启动的时候出现如下错误:Uncompressing Linux...................................................................Linux version 2.6.9-intc1 (root@localhost.localdomain) (gcc version 3.4.3) #2 Thu Jan5CPU: XScale-PXA270 [69054114] revision 4 (ARMv5TE)
CPU: D undefined 5 cache
CPU: I cache: 32768 bytes, associativity 32, 32 byte lines, 32 sets
CPU: D cache: 32768 bytes, associativity 32, 32 byte lines, 32 sets
Machine: Intel HCDDBBVA0 Development Platform (aka Mainstone)
Memory policy: ECC disabled, Data cache writeback
Run Mode clock: 208.00MHz (*16)
Turbo Mode clock: 520.00MHz (*2.5, active)
Memory clock: 208.00MHz (/2)
System bus clock: 208.00MHz
Built 1 zonelists
Kernel command line: root=/dev/mtdblock2 rootfstype=jffs2 ip=192.168.1.101:192.168.1.MPID hash table entries: 1024 (order: 10, 16384 bytes)
Console: colour dummy device 80x30
Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
Memory: 128MB = 128MB total
Memory: 126976KB available (2205K code, 463K data, 96K init)
Unable to handle kernel NULL pointer dereference at virtual address 00000084
pgd = c0004000---------------------------------------------------------------错误处!~!!!
[00000084] *pgd=00000000
Internal error: Oops: 8f5 [#1]
Modules linked in:
CPU: 0
PC is at alloc_arraycache+0x5c/0x70
LR is at cache_alloc_refill+0x1cc/0x3f4
pc : [] lr : [] Not tainted
sp : c025bf48 ip : c025bf04 fp : c025bf64
r10: 00000000 r9 : c02aab38 r8 : 00000000
r7 : 0000000c r6 : 00000018 r5 : 00000070 r4 : 00000080
r3 : 00000000 r2 : c03ff290 r1 : c03ff290 r0 : 00000080
Flags: nzCv IRQs on FIQs off Mode SVC_32 Segment kernel
Control: 397F Table: A0004000 DAC: 0000001D
Process swapper (pid: 0, stack limit = 0xc025a1a0)
Stack: (0xc025bf48 to 0xc025c000)
bf40: 00000001 00000018 c02bca20 0000000c c025bf90 c025bf68
bf60: c0059918 c0058de0 c02bcaa0 00000000 c02bca20 c03ff5a0 00000000 c026017c
bf80: c026023c c025bfa4 c025bf94 c0059ae4 c00598c8 c02bca20 c025bfe0 c025bfa8
bfa0: c000f770 c0059a98 00000000 00000000 00000060 000001cf c02bb6d0 c02bb6d0
bfc0: c02a1fa8 c02a1fa4 c025cf94 69054114 a001a9ec c025bffc c025bfe4 c00086c4
bfe0: c000f4ec c00082e0 c02a1fb8 c02bb6d0 00000000 c025c000 c0008080 c00085e0
Backtrace:
[] (alloc_arraycache+0x0/0x70) from [] (do_tune_cpucache+0x5c/0x1) r7 = 0000000C r6 = C02BCA20 r5 = 00000018 r4 = 00000001
[] (do_tune_cpucache+0x0/0x1d0) from [] (enable_cpucache+0x58/0x7) r8 = C026023C r7 = C026017C r6 = 00000000 r5 = C03FF5A0
r4 = C02BCA20
[] (enable_cpucache+0x0/0x7c) from [] (kmem_cache_init+0x290/0x31) r4 = C02BCA20
[] (kmem_cache_init+0x0/0x31c) from [] (start_kernel+0xf0/0x184)
[] (start_kernel+0x0/0x184) from [] (__mmap_switched+0x0/0x2c)
r4 = C02BB6D0
Code: ebfffe36 e2504000 0a000003 e3a03000 (e98400c0)
Kernel panic - not syncing: Attempted to kill the idle task!
大家有遇见过类似的问题吗?
我先说下我的操作过程:
1 传文件系统到RAM中
blob> tftp rootfs_x32_16M.jffs2
TFTPing rootfs_x32_16M.jffs2........OK
received 32770 blocks (16777216 bytes)
tftp_cmd: file 'rootfs_x32_16M.jffs2' loaded via TFTP to
address 0xa1000000
2 烧写文件系统到FLASH中
blob> fwrite 0xa1000000 0x240000 0x1000000
Erasing 64 blocks at 0x00240000:.........
Flashing 0x01000000 bytes at 0x00240000
意思是把RAM中0xa1000000 的烧写到FLASH的0x240000 开始的,大小为0x1000000(16M)
3 erasing the remaining flash
blob> ferase 0x1240000 0xdc0000
Erasing 55 block at 0x01240000:..........
4 upload the kernel
blob> tftp zImage.vga
5 burn the uploaded kernel image in RAM on to flash
blob> fwrite 0xa1000000 0x40000 0x200000
注意:这里是2M的大小
我的kernel镜象是1.22M
是不是我的kernel大于1M了的原因?
|
up
|
不懂啊~