当前位置: 技术问答>linux和unix
谁能解释一下montavista linux (davinci arm)的oops信息怎么理解?
来源: 互联网 发布时间:2016-02-14
本文导语: polUnable to handle kernel NULL pointer dereference at virtual address 00000004 lfpgd = c05c0000 ds[00000004] *pgd=81ea1031_i, *pte=00000000n[, *ppte=000000000] iInternal error: Oops: 17 [#1] CPU: 0 PC is at device_iocmd+0x924/0x1378 LR is at device_iocmd+0...
polUnable to handle kernel NULL pointer dereference at virtual address 00000004
lfpgd = c05c0000
ds[00000004] *pgd=81ea1031_i, *pte=00000000n[, *ppte=000000000]
iInternal error: Oops: 17 [#1]
CPU: 0
PC is at device_iocmd+0x924/0x1378
LR is at device_iocmd+0x614/0x1378
pc : [] lr : [] Not tainted
sp : c0539e74 ip : 00000000 fp : c0539f3c
r10: 00002008 r9 : c03e44e4 r8 : c03e44bc
r7 : c03e4344 r6 : 00000000 r5 : c0538034 r4 : c052abe0
r3 : 00000000 r2 : 00000000 r1 : 00013628 r0 : 00000000
Flags: nZCv IRQs on FIQs on Mode SVC_32 Segment user
Control: 5317F Table: 805C0000 DAC: 00000015
Process localtest (pid: 709, stack limit = 0xc0538198)
Stack: (0xc0539e74 to 0xc053a000)
9e60: c0538000 a0000013 00000000
9e80: 00000000 00000000 00000000 c0539eb0 c0539e9c 00000000 c013669c 00000003
9ea0: 00000003 c0539f10 c0539eb4 c01267e0 00000000 00000000 00000000 00000000
9ec0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000002c
9ee0: 000135fc 00000000 00000000 c0539ef8 c0120280 c002f3d4 00000018 00000018
9f00: c06d7000 c0539f54 c0539f14 c0120a38 c0120224 c052abe0 ffffffe7 00002008
9f20: 00013628 c001eb24 c0538000 402fd000 c0539f5c c0539f40 c0079954 c0119854
9f40: c052abe0 00013628 00000006 00000000 c0539f84 c0539f60 c0079c60 c00798e8
9f60: c0539f78 00000000 c052abe0 fffffff7 00002008 00000036 c0539fa4 c0539f88
9f80: c0079cc0 c0079978 00000000 befffdc8 befffe74 4001ee10 00000000 c0539fa8
9fa0: c001e9a0 c0079c90 befffdc8 c001fbf4 00000006 00002008 00013628 00000000
9fc0: befffdc8 befffe74 4001ee10 0000a574 00000001 402ff1c4 402fd000 befffe64
9fe0: 00013120 befffd68 00008e34 402a1394 20000010 00000006 95a34f8f ef7cd1cf
Backtrace:
[] (device_iocmd+0x0/0x1378) from [] (do_ioctl+0x7c/0x90)
[] (do_ioctl+0x0/0x90) from [] (vfs_ioctl+0x2f8/0x318)
r7 = 00000000 r6 = 00000006 r5 = 00013628 r4 = C052ABE0
[] (vfs_ioctl+0x0/0x318) from [] (sys_ioctl+0x40/0x60)
r7 = 00000036 r6 = 00002008 r5 = FFFFFFF7 r4 = C052ABE0
[] (sys_ioctl+0x0/0x60) from [] (ret_fast_syscall+0x0/0x2c)
r6 = 4001EE10 r5 = BEFFFE74 r4 = BEFFFDC8
Code: e51bc0c0 e1a06183 e086300c e3cd5d7f (e5932004)
s failed
特别是这个:
device_iocmd+0x924/0x1378
0x924/0x1378,分别是什么意思?
lfpgd = c05c0000
ds[00000004] *pgd=81ea1031_i, *pte=00000000n[, *ppte=000000000]
iInternal error: Oops: 17 [#1]
CPU: 0
PC is at device_iocmd+0x924/0x1378
LR is at device_iocmd+0x614/0x1378
pc : [] lr : [] Not tainted
sp : c0539e74 ip : 00000000 fp : c0539f3c
r10: 00002008 r9 : c03e44e4 r8 : c03e44bc
r7 : c03e4344 r6 : 00000000 r5 : c0538034 r4 : c052abe0
r3 : 00000000 r2 : 00000000 r1 : 00013628 r0 : 00000000
Flags: nZCv IRQs on FIQs on Mode SVC_32 Segment user
Control: 5317F Table: 805C0000 DAC: 00000015
Process localtest (pid: 709, stack limit = 0xc0538198)
Stack: (0xc0539e74 to 0xc053a000)
9e60: c0538000 a0000013 00000000
9e80: 00000000 00000000 00000000 c0539eb0 c0539e9c 00000000 c013669c 00000003
9ea0: 00000003 c0539f10 c0539eb4 c01267e0 00000000 00000000 00000000 00000000
9ec0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000002c
9ee0: 000135fc 00000000 00000000 c0539ef8 c0120280 c002f3d4 00000018 00000018
9f00: c06d7000 c0539f54 c0539f14 c0120a38 c0120224 c052abe0 ffffffe7 00002008
9f20: 00013628 c001eb24 c0538000 402fd000 c0539f5c c0539f40 c0079954 c0119854
9f40: c052abe0 00013628 00000006 00000000 c0539f84 c0539f60 c0079c60 c00798e8
9f60: c0539f78 00000000 c052abe0 fffffff7 00002008 00000036 c0539fa4 c0539f88
9f80: c0079cc0 c0079978 00000000 befffdc8 befffe74 4001ee10 00000000 c0539fa8
9fa0: c001e9a0 c0079c90 befffdc8 c001fbf4 00000006 00002008 00013628 00000000
9fc0: befffdc8 befffe74 4001ee10 0000a574 00000001 402ff1c4 402fd000 befffe64
9fe0: 00013120 befffd68 00008e34 402a1394 20000010 00000006 95a34f8f ef7cd1cf
Backtrace:
[] (device_iocmd+0x0/0x1378) from [] (do_ioctl+0x7c/0x90)
[] (do_ioctl+0x0/0x90) from [] (vfs_ioctl+0x2f8/0x318)
r7 = 00000000 r6 = 00000006 r5 = 00013628 r4 = C052ABE0
[] (vfs_ioctl+0x0/0x318) from [] (sys_ioctl+0x40/0x60)
r7 = 00000036 r6 = 00002008 r5 = FFFFFFF7 r4 = C052ABE0
[] (sys_ioctl+0x0/0x60) from [] (ret_fast_syscall+0x0/0x2c)
r6 = 4001EE10 r5 = BEFFFE74 r4 = BEFFFDC8
Code: e51bc0c0 e1a06183 e086300c e3cd5d7f (e5932004)
s failed
特别是这个:
device_iocmd+0x924/0x1378
0x924/0x1378,分别是什么意思?
|
PC是当前指令地址,说明在device_iocmd函数里出现了访问NULL指针,
应该是你的某个驱动有问题
应该是你的某个驱动有问题
|
虚拟内存指的地址为NULL ..
"device_iocmd+0x924/0x1378"
觉得分成device_iocmd+0x924 @ 0x1378
device_iocmd 的范围大小为device_iocmd + 0x1378
而0x924只是下移的位置
"device_iocmd+0x924/0x1378"
觉得分成device_iocmd+0x924 @ 0x1378
device_iocmd 的范围大小为device_iocmd + 0x1378
而0x924只是下移的位置