我正在尝试在基于MIPS的cutom硬件上启动Linux-3.4.1。它在打印线后挂起
VFS:Mounted root (ubifs filesystem)
在进一步调试时,发现内核挂在free_init_mem()[arch / mips / mm / init.c]中。我的调试打印以确定free_init_mem中的挂起位置如下:
Freeing unused kernel memory: 8038e000 - 803bb000
Freeing unused kernel memory: 8038e000 page
Freeing unused kernel memory: 8038f000 page
Freeing unused kernel memory: 80390000 page
Freeing unused kernel memory: 80391000 page
Freeing unused kernel memory: 80392000 page
Freeing unused kernel memory: 80393000 page
Freeing unused kernel memory: 80394000 page
.....
Freeing unused kernel memory: 803b4000 page
<hang>
任何调试上述挂起的帮助都非常有用。
答案 0 :(得分:0)
只是一些随机猜测:因为它在释放init内存后挂起,我怀疑某些代码标记错误__init
,或者某些数据标记错误__initdata
。因此,相应的页面被释放,内核在需要这些数据时崩溃。
我猜你已经完成了一些自定义内核代码来支持你的MIPS硬件。仔细检查您的代码,确保您没有犯错误。