Chinaunix

标题: Unable to handle kernel paging request at virtual address [打印本页]

作者: jackyard    时间: 2011-03-27 13:36
标题: Unable to handle kernel paging request at virtual address
目标板内核运行很稳定,同时用busybox生成的所有可执行指令都可以正常运行(/bin和/sbin下的),但是我自己用交叉编译器编译的应用程序下载到指定的目录下后,一运行,就出现下面的错误,内核和文件系统还有应用程序都是用同一个版本的交叉编译器编译的,下面分别 是运行hello和RZ两个应用程序时出错的指示,是内核移植的问题还是文件系统中库的问题?
[jackyard@ /usr]#rz
Unable to handle kernel paging request at virtual address e1a03083
pgd = c032c000  [e1a03083] *pgd=00000000
Internal error: Oops: 3 [#1]
Modules linked in:
CPU: 0
PC is at kmem_cache_alloc+0x1c/0x48
LR is at mempool_alloc+0x80/0x104
pc : [<c005c7a8>]    lr : [<c00584c8>]    Not tainted
sp : c1e77b70  ip : c1e77b84  fp : c1e77b80 r10: 0000002
同样一个hello程序也是这样的
[jackyard@ /usr]#./hello
hello linUnable to handle kernel paging request at virtual address e3530000
pgd = c032c000
[e3530000] *pgd=00000000
Internal error: Oops: 5 [#1]
Modules linked in:
CPU: 0
PC is at kmem_cache_alloc+0x1c/0x48
LR is at mempool_alloc+0x80/0x104
两个程序到最后都是
Code: bad PC value.
<0>Kernel panic - not syncing: Aiee, killing interrupt handler!
求高人指点?
作者: Godbach    时间: 2011-03-27 13:51
这个飞机搞得有点大,感觉像是内核的问题
作者: marsbible    时间: 2011-03-27 17:03
莫非是底层文件系统的问题?麻烦啊
作者: jackyard    时间: 2011-03-27 22:11
不是内核的问题,因为我烧了一个之前的kernel 也是这个问题。是不是和编译器有关啊,因为之前板子自带的文件系统和内核烧上去后,没有问题,后来我自己作了内核和文件系统。我用我的就有问题。我现在把这四个东西配起来烧入后情况如下:
1、内核用板子自带的+文件系统用板子自带的=烧入后运行应用程序没有问题
2、内核用我自己的+文件系统用板子自带的=用我的编译器编的应用程序的目标程序一运行就是上面的问题,但是运行板子自带的文件系统中一个编译完成的C程序,没有问题。
3、内核用板子自带的+文件系统用我的=和第2的情况一样。总之一句话就是运行用我的编译的C程序有问题。
我现在用的编译器是3.4.1。内核和文件系统都是用这个的。唯一一个不是用我的编译的那就是uboot.uboot我目前用的是板子自带的。给我的感觉好像是和编译器有关。各位你们觉的呢???




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2