天嵌 ARM开发社区

 找回密码
 注册
查看: 4104|回复: 8

请各位大虾帮忙分析一下文件系统无法挂载的问题:Kernel panic - not syncing: Attemp

[复制链接]
6724243 发表于 2012-3-10 16:07:53 | 显示全部楼层 |阅读模式
本人开发板是4.3尺寸TQ2440,linux-2.6.30.4内核之前已经通过4.3.3编译器制作出内核镜像。根据linux移植手册step11:构建框架,然后自己手工添加各个目录及文件的内容。添加完了后制作出文件系统镜像。然后依次将天嵌自带的u-boot,自己制作的内核镜像、文件系统镜像、logo镜像烧录到开发板,选择8重启系统后串口打印信息就出现下面的情况。但是我用天嵌自带的root_qtopia_2.2.0_2.6.30.4编译出文件系统镜像,然后重新把这次的文件系统镜像烧到开发板就可以正常启动了。请大家百忙之中抽出点时间帮忙看一下,给点宝贵的意见。谢谢了!
利用天嵌自带的root_qtopia_2.2.0_2.6.30.4制作出文件系统重新烧到开发板,就可以了,正常启动的打印信息如下:
s3c2410-rtc s3c2410-rtc: setting system clock to 2012-02-18 00:17:35 UTC (1329524255)
end_request: I/O error, dev mtdblock2, sector 256
isofs_fill_super: bread failed, dev=mtdblock2, iso_blknum=64, block=128
yaffs: dev is 32505858 name is "mtdblock2"
yaffs: passed flags ""
yaffs: Attempting MTD mount on 31.2, "mtdblock2"
yaffs: auto selecting yaffs2
block 510 is bad
yaffs_read_super: isCheckpointed 0
VFS: Mounted root (yaffs filesystem) on device 31:2.
Freeing init memory: 232K  //自己移植的文件系统从此以后就有问题啦
Start Qtopia-2.2.0
usbcore: registered new interface driver rt73usb
usbcore: registered new interface driver zd1211rw
initializing s3c2440 camera interface......
insmod: can't insert '/lib/ov9650.ko': Device or resource busy
Try to bring eth0 interface up ...
ifconfig eth0 hw ether 10:23:45:67:89:ab
eth0: link down
ifconfig eth0 192.168.1.6 netmask 255.255.255.0 up
add default gw 192.168.1.2
Done
[18/Feb/2012:00:17:39 +0000] boa: server version Boa/0.94.13
[18/Feb/2012:00:17:39 +0000] boa: server built Jul 29 2009 at 14:27:34.
[18/Feb/2012:00:17:39 +0000] boa: starting server pid=478, port 80
Please press Enter to activate this console
我自己添加文件系统各个目录下面内容,我只复制了和正常启动开始不一样的地方打印信息如下:
s3c2410-rtc s3c2410-rtc: setting system clock to 2012-02-18 00:17:35 UTC (1329524255)
end_request: I/O error, dev mtdblock2, sector 256
isofs_fill_super: bread failed, dev=mtdblock2, iso_blknum=64, block=128
yaffs: dev is 32505858 name is "mtdblock2"
yaffs: passed flags ""
yaffs: Attempting MTD mount on 31.2, "mtdblock2"
yaffs: auto selecting yaffs2
block 510 is bad
yaffs_read_super: isCheckpointed 0
VFS: Mounted root (yaffs filesystem) on device 31:2.
Freeing init memory: 232K
Kernel panic - not syncing: Attempted to kill init!       //无法挂载根文件系统,从下一行开始就不正常了。
Backtrace:
[<c0046fbc>] (dump_backtrace+0x0/0x10c) from [<c02dd308>] (dump_stack+0x18/0x1c)
r7:c381ded0 r6:c3815000 r5:0000000b r4:c03ed800
[<c02dd2f0>] (dump_stack+0x0/0x1c) from [<c02dd358>] (panic+0x4c/0x10c)
[<c02dd30c>] (panic+0x0/0x10c) from [<c0058340>] (do_exit+0x5e8/0x614)
r3:c03c8778 r2:c381dce4 r1:00002710 r0:c036d91c
[<c0057d58>] (do_exit+0x0/0x614) from [<c00583b0>] (do_group_exit+0x44/0xc4)
[<c005836c>] (do_group_exit+0x0/0xc4) from [<c0061f50>] (get_signal_to_deliver+0x194/0x32c)
r5:c381c000 r4:00106001
[<c0061dbc>] (get_signal_to_deliver+0x0/0x32c) from [<c004575c>] (do_signal+0x60/0x4d8)
[<c00456fc>] (do_signal+0x0/0x4d8) from [<c0045c04>] (do_notify_resume+0x30/0x34)
[<c0045bd4>] (do_notify_resume+0x0/0x34) from [<c0042e6c>] (work_pending+0x1c/0x20)
打印完毕。
从这里往后系统就开始不停的重启,不断重复上面的内容。
Rick.w 发表于 2012-3-10 18:48:40 | 显示全部楼层
看一下STEP19,如果不喂狗,系统会反复重启
 楼主| 6724243 发表于 2012-3-11 00:18:09 | 显示全部楼层
Rick.w 发表于 2012-3-10 18:48
看一下STEP19,如果不喂狗,系统会反复重启

这个后来我也想到了,按照天嵌手册提供的看门狗应用程序的源码和Makefile文件的内容,然后在linux内核源码的drivers/watchdog/目录下创建了一个名为EmbedSky_wtd的目录,将EmbedSky_wdg.c和Makefile放进去,然后通过arm-linux-gcc-4.3.3编译出一个可执行文件且权限为777,将这个可执行文件按照手册要求复制到文件系统的sbin/目录下,然后修改etc/init.d/rcS文件,启动看门狗喂狗程序。重新编译出文件系统镜像烧到开发板,打印信息还是一样。
谢谢你的回复。我会继续努力的!:)
亚瑟王 发表于 2012-3-12 16:59:20 | 显示全部楼层
6724243 发表于 2012-3-11 00:18
这个后来我也想到了,按照天嵌手册提供的看门狗应用程序的源码和Makefile文件的内容,然后在linux内核源码 ...

亲,你烧写天嵌科技提供的文件系统能不能启动?
 楼主| 6724243 发表于 2012-3-12 23:33:08 | 显示全部楼层
亚瑟王 发表于 2012-3-12 16:59
亲,你烧写天嵌科技提供的文件系统能不能启动?

可以,后来我又用天嵌提供的文件系统源码的rcS文件覆盖了我自己添加的rcS文件还是不行。我只移植到step12结束。
亚瑟王 发表于 2012-3-13 09:28:08 | 显示全部楼层
6724243 发表于 2012-3-12 23:33
可以,后来我又用天嵌提供的文件系统源码的rcS文件覆盖了我自己添加的rcS文件还是不行。我只移植到step12结 ...

你把你做文件系统的详细步骤讲一下。
 楼主| 6724243 发表于 2012-3-13 21:53:03 | 显示全部楼层
亚瑟王 发表于 2012-3-13 09:28
你把你做文件系统的详细步骤讲一下。

按照移植手册step9、step10做完后,紧接着进行step11,构建文件系统:
1、建立一个“root_2.6.30.4”的文件夹,复制busybox-1.13.3(并非busybox-1.13.0)/_install目录中的bin目录、sbin目录、usr目录、linuxrc到root_2.6.30.4目录下,然后新建了移植手册上讲的那些目录。
2、移植手册提到的并且有具体添加内容的那几个目录下的文件,我都按照手册讲的添加进去了。至于root_2.6.30.4目录下的其他子目录,手册中除了proc 目录、sys目录、 tmp目录和var目录默认为空,opt目录、root目我不知道怎么添加,也就没有添加任何内容。再就是usr/bin/目录下的内容,我也按照手册上的要求将天嵌提供的文件系统源码中对应的目录复制到我所建立的文件系统root_2.6.30.4下usr/bin/目录下。
3、执行mkyaffs2image制作文件系统镜像了。

说明:9.3 在配置单中添加对yaffs的支持过程中,天嵌提供的linux-2.6.30.4内核源码,在其根目录下执行make menuconfig后,Device Drivers--->【】S3C2410 NAND Hardware ECC我也选上了,但是并没有 nand flash capacity select(256MB-1GB nand for EmbedSky Board)这一项,这个应该不影响文件系统正常挂载,因为我用天嵌提供的文件系统源码制作出来的文件系统镜像烧到开发板都可以用的。

上面的就是我大概的移植过程,有什么问题恳请指正!
亚瑟王 发表于 2012-3-15 11:12:23 | 显示全部楼层
6724243 发表于 2012-3-13 21:53
按照移植手册step9、step10做完后,紧接着进行step11,构建文件系统:
1、建立一个“root_2.6.30.4”的文 ...

亲,说明一下:Nand Flash驱动配置那个地方,新版本的内核(也就是10年06月的光盘里面的)已经去掉了容量选择的配置,自动识别大小容量的Nand Flash了。
你在你写的第二条那里做一下修改:你直接对比你的文件系统和天嵌科技的文件系统,然后挨个复制文件到你的文件系统中,然后注意各个文件的权限,然后再测试一下。最好是复制3、5个就测试一下,这样可以更快找到原因。
 楼主| 6724243 发表于 2012-3-15 21:22:41 | 显示全部楼层
亚瑟王 发表于 2012-3-15 11:12
亲,说明一下:Nand Flash驱动配置那个地方,新版本的内核(也就是10年06月的光盘里面的)已经去掉了容量 ...

嗯,谢谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

i.MX8系列ARM cortex A53 M4 工控板上一条 /1 下一条

Archiver|手机版|小黑屋|天嵌 嵌入式开发社区 ( 粤ICP备11094220号 )

GMT+8, 2024-5-10 14:14 , Processed in 1.046875 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表