RAMDISK: incomplete write-解决办法

来源:互联网 发布:bbc动物纪录片知乎 编辑:程序博客网 时间:2024/06/06 03:09
</pre>boot过程中系统hang住了。<pre name="code" class="objc">RAMDISK: incomplete write (15544 != 32768)write errorVFS: Mounted root (ext2 filesystem) on device 1:0.devtmpfs: mountedFreeing unused kernel memory: 356K (c000000000ab1000 - c000000000b0a000)attempt to access beyond end of deviceram0: rw=0, want=2057816, limit=2000000attempt to access beyond end of deviceram0: rw=0, want=2057816, limit=2000000attempt to access beyond end of deviceram0: rw=0, want=2124656, limit=2000000attempt to access beyond end of deviceram0: rw=0, want=2124656, limit=2000000attempt to access beyond end of deviceram0: rw=0, want=2124656, limit=2000000Kernel panic - not syncing: No init found.  Try passing init= option to kernel. See Linux Documentation/init.txt for guidance.CPU: 1 PID: 1 Comm: swapper/0 Not tainted 3.12.19-rt30-00587-geed19d7 #12Call Trace:[c0000000f90bfbc0] [c0000000000074ec] .show_stack+0x7c/0x1cc (unreliable)[c0000000f90bfc90] [c0000000007d5664] .dump_stack+0x84/0xb0[c0000000f90bfd10] [c0000000007d2968] .panic+0xec/0x25c[c0000000f90bfda0] [c000000000001a10] .kernel_init+0x1b8/0x7a8[c0000000f90bfe30] [c000000000000888] .ret_from_kernel_thread+0x5c/0xd4Rebooting in 180 seconds..


仔细查找原因,原来是因为我的bootargs启动参数,ramdisk大小设置成1M了。。。

setenv othbootargs      ramdisk_size=1000000 log_buf_len=128K no_console_suspend


但是我的文件系统大小为360M

[zhangzy@titan ~]$ ls -hal /tftpboot/b46552/t1040rdb/pm/fsl-image-full-t1040rdb-64b.ext2.gz.u-boot-rw-r--r-- 1 zhangzy klocwork 360M Dec  3 15:19 /tftpboot/b46552/t1040rdb/pm/fsl-image-full-t1040rdb-64b.ext2.gz.u-boot


所以需要调整bootargs启动参数ramdisk_size大小才行,我决定它扩容为400M

setenv othbootargs      ramdisk_size=400000000 log_buf_len=128K no_console_suspend


再试一次,系统果然boot起来了。


不过,有同事说,这么大的文件系统不适合用ramdisk的方式启动,应该用nfsroot方式。这个议题留待下回分解。


0 0
原创粉丝点击