日期:2014-05-16  浏览次数:20845 次

请教 Unable to handle kernel paging request at virtual address 60519ad0 问题
在开发板上运行程序, 程序运行一段时间之后(这个时间不好确定,有时候是几分钟有时候是几个小时)程序就会退出不再执行,通过串口的打印可以看到如下的信息:

Unable to handle kernel paging request at virtual address 60519ad0

pgd = c1e60000

[60519ad0] *pgd=00000000

Internal error: Oops: 5 [#1]

Modules linked in: hi3510_vs pcf8563 hi_sio tlv320 adv7171 hi_i2c ohci_hcd misc_gpio hi_gpio hi3510_wdt

CPU: 0

PC is at 0xc0510720

LR is at 0x10

pc : [<c0510720>] lr : [<00000010>] Not tainted

sp : c100de64 ip : 00000000 fp : c100df24

r10: 00000000 r9 : c16501f8 r8 : 00000003

r7 : 00000048 r6 : bf000000 r5 : c100de70 r4 : 00000000

r3 : 60519ad0 r2 : 00000010 r1 : c100de70 r0 : bddffbb8

Flags: nzCv IRQs on FIQs on Mode SVC_32 Segment user

Control: 5317F Table: 61E60000 DAC: 00000015

Process dec_server (pid: 265, stack limit = 0xc100c194)

Stack: (0xc100de64 to 0xc100e000)

de60: bddffbb8 c100de7c c0505790 bf027428 c100de7c c1e0f6cc 00000000 

de80: 00000001 00000000 00000005 00000160 00000120 00000000 00000000 626c6100 

dea0: 62732100 00000000 00000300 00000300 00000000 00000001 bddffc00 00000000 

dec0: 00000001 c1e8ad00 c100df14 c100ded8 c01f5c70 c0037238 c1ee89b4 00000f30 

dee0: c1ee8abc 98c88520 0000111a 001cb213 00000002 c100c000 c100df18 c1e0f6cc 

df00: ffffffe7 c0484806 bddffbb8 00000000 c100c000 000c9104 c100df38 c100df28 

df20: bf027820 bf01e914 bf027418 c100df58 c100df3c c00922f0 bf027814 c1e0f6cc 

df40: c16501f8 bddffbb8 00000011 c100df84 c100df5c c00925f4 c0092284 c007e544 

df60: c0037238 c1e0f6cc fffffff7 c0484806 00000036 c0021f64 c100dfa4 c100df88 

df80: c0092654 c0092314 00000001 000e3094 bddffd28 00000000 00000000 c100dfa8 

dfa0: c0021de0 c0092624 000e3094 c01f5610 00000011 c0484806 bddffbb8 00000001 

dfc0: 000e3094 bddffd28 00000000 000002a0 bddffc00 0016ad3c 000c9104 00000000 

dfe0: 00000011 bddffba0 0009c8e8 0009c8b0 a0000010 00000011 0606e306 e30606e3 

Backtrace: 

[<bf01e904>] (CMPI_UserCopy+0x0/0x19c [hi3510_vs]) from [<bf027820>] (DRV_VDEC_Ioctl+0x1c/0x24 [hi3510_vs])

[<bf027804>] (DRV_VDEC_Ioctl+0x0/0x24 [hi3510_vs]) from [<c00922f0>] (do_ioctl+0x7c/0x90)

[<c0092274>] (do_ioctl+0x0/0x90) from [<c00925f4>] (vfs_ioctl+0x2f0/0x310)

 r7 = 00000011 r6 = BDDFFBB8 r5 = C16501F8 r4 = C1E0F6CC

[<c0092304>] (vfs_ioctl+0x0/0x310) from [<c0092654>] (sys_ioctl+0x40/0x60)

 r8 = C0021F64 r7 = 00000036 r6 = C0484806 r5 = FFFFFFF7

 r4 = C1E0F6CC 

[<c0092614>] (sys_ioctl+0x0/0x60) from [<c0021de0>] (ret_fast_syscall+0x0/0x2c)

 r6 = 00000000 r5 = BDDFFD28 r4 = 000E3094 

Code: e024249e e2800001 e5d0c000 e59f3044 (e7d3300c) 

 




研究了半天始终没搞明白为什么会出这种问题。不知道是程序的问题还是底层驱动的问题。
请各位帮小弟看看这应该是哪个地方的问题。

------解决方案--------------------
hi3510_vs pcf8563 hi_sio tlv320 adv7171 hi_i2c ohci_hcd misc_gpio hi_gpio hi3510_wdt 

我怀疑是这几个模块中对硬件的访问造成冲突导致的


------解决方案--------------------
好像是0xc0510720这个地方访问空指针了。。
------解决方案--------------------
好奇怪的问题,都20个小时应该没太大问题,重新上电再跑吧
------解决方案--------------------
Unable to handle kernel paging request at virtual address 60519ad0 

驱动问题吧
------解决方案--------------------