免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2870 | 回复: 1
打印 上一主题 下一主题

usb otg驱动问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2014-02-18 16:30 |只看该作者 |倒序浏览
cpu:bcm5892
linux:2.6.32
测试过程:外接u盘,加载usb otg驱动,拷贝文件到u盘后删除,卸载otg驱动,写了个脚本连续进行上述测试。
大量测试后报段错误,消息:

[117362.610000] Unable to handle kernel NULL pointer dereference at virtual addr
ess 0000000c
[117362.610000] pgd = c0004000
[117362.610000] [0000000c] *pgd=00000000
[117362.610000] Internal error: Oops: 17 [#1] PREEMPT
[117362.610000] last sysfs file: /sys/devices/virtual/vc/vcsa1/dev
[117362.610000] Modules linked in: bcm589x_otg(+) bcm589x_dwccom smc_driver picc
_driver magcard 3326printer bcm5892_adc led misc bcm589x_dmu(P) bcm589x_pm(P) bc
m589x_rtc(P) pmb(P) [last unloaded: bcm589x_dwccom]
[117362.610000] CPU: 0    Tainted: P        W   (2.6.32.9 #350)
[117362.610000] PC is at unmap_urb_for_dma+0x44/0xe0
[117362.610000] LR is at usb_hcd_giveback_urb+0x74/0x10c
[117362.610000] pc : [<c01de4b8>]    lr : [<c01de5c8>]    psr: 60000193
[117362.610000] sp : c3865b30  ip : c3865b50  fp : c3865b4c
[117362.610000] r10: c2cb9e00  r9 : c2cb9e00  r8 : c2d848e0
[117362.610000] r7 : 00000000  r6 : 00000000  r5 : 00000000  r4 : c2e69ca0
[117362.610000] r3 : 00000200  r2 : c2c6f000  r1 : c2e69ca0  r0 : 00000000
[117362.610000] Flags: nZCv  IRQs off  FIQs on  Mode SVC_32  ISA ARM  Segment ke
rnel
[117362.610000] Control: 00c5387d  Table: 43ad4008  DAC: 00000017
[117362.610000] Process khubd (pid: 139, stack limit = 0xc386426
[117362.610000] Stack: (0xc3865b30 to 0xc3866000)
[117362.610000] 5b20:                                     bf0da14c bf0d9ce0 c2e6
9ca0 00000000
[117362.610000] 5b40: c3865b6c c3865b50 c01de5c8 c01de480 c3865b6c 00000002 0000
0002 c2e69ca0
[117362.610000] 5b60: c3865ba4 c3865b70 bf0ddca0 c01de560 bf0de97c bf0d9e18 c2c0
df60 c4810540
[117362.610000] 5b80: c2e3ef20 00000002 00000000 c2d848e0 c2cb9e00 c2c0d900 c386
5bec c3865ba8
[117362.610000] 5ba0: bf0df534 bf0dda74 bf0ddfa8 c2c0df60 c2e3ef20 c4810560 0000
0000 c3865bc8
[117362.610000] 5bc0: bf0df02c 00000002 00000000 00000023 c2e3ef20 c2cb9e00 c2c0
d900 c4810560
[117362.610000] 5be0: c3865c74 c3865bf0 bf0dff28 bf0df250 00000000 c2cb9e1c c481
002c 00000001
[117362.610000] 5c00: 00000000 c4810000 c3865c2c c3865c18 bf0d9d48 00000002 0000
0000 c2cb9e00
[117362.610000] 5c20: c3865c6c c3865c30 bf0da14c bf0d9ce0 bf0da888 00000002 ffff
ffff c2cb9e14
[117362.610000] 5c40: c3865d6c 00000002 00001fff c2cb9e00 00000003 00000000 0000
0008 c4810000
[117362.610000] 5c60: c3864000 c03b94c8 c3865c94 c3865c78 bf0e0744 bf0dfd0c 0000
0002 02000008
[117362.610000] 5c80: c2cb9e00 00000001 c3865cbc c3865c98 bf0e0dcc bf0e0708 bf0c
4828 c3a9e5e0
[117362.610000] 5ca0: a0000193 00000001 00000000 00000000 c3865ccc c3865cc0 bf0d
d990 bf0e0cbc
[117362.610000] 5cc0: c3865ce4 c3865cd0 c01dea10 bf0dd988 c2e3ee60 0000003a c386
5d0c c3865ce8
[117362.610000] 5ce0: c0060170 c01de998 c03bc914 c03bc914 c2d84a20 0000003a 0000
0003 00000002
[117362.610000] 5d00: c3865d2c c3865d10 c0062918 c0060138 c3865d2c 0000003a 0000
0000 04000000
[117362.610000] 5d20: c3865d44 c3865d30 c0023070 c0062878 ffffffff d102a000 c386
5dc4 c3865d48
[117362.610000] 5d40: c0023b24 c002300c 00000001 00000000 0a9e5650 000165c1 0000
0000 00000000
[117362.610000] 5d60: c3848380 c3864000 c3904ce0 c384850c c03b94c8 c3865dc4 c392
2cb8 c3865d90
[117362.610000] 5d80: c3922cb8 c02c8b78 00000013 ffffffff c03bc914 c384850c 0000
1fff 00b2a189
[117362.610000] 5da0: c03fc180 000001f4 00b29f95 c3865e68 00000000 00000002 c386
5e04 c3865dc8
[117362.610000] 5dc0: c02c944c c02c8980 00000008 c03fca94 c03da114 00b2a189 c003
f00c c3848380
[117362.610000] 5de0: c03fc180 a0000013 c3865e20 c3848380 c3864000 000001f4 c386
5e54 c3865e08
[117362.610000] 5e00: c02c9090 c02c92c0 bf0dd990 00000000 c3865e34 00000001 c384
8380 c0030cf8
[117362.610000] 5e20: c3865e6c c3865e6c 00000010 00000000 c3865e68 c2e69ca0 0000
1388 c3865eac
[117362.610000] 5e40: 00000000 00000006 c3865e64 c3865e58 c02c91c0 c02c8fa4 c386
5e9c c3865e68
[117362.610000] 5e60: c01e1420 c02c91b8 00000000 c3865e20 c3865e20 c2e69ca0 c386
5e9c c2c69d60
[117362.610000] 5e80: 00000040 00000100 00000000 00000080 c3865edc c3865ea0 c01e
1658 c01e13bc
[117362.610000] 5ea0: 80000080 c2c6f000 c03845c8 c2c6f000 00000000 c2c9e420 c2c6
f000 00000000
[117362.610000] 5ec0: 00000000 00000002 c2c6f068 c3a9e5e0 c3865f3c c3865ee0 c01d
aafc c01e159c
[117362.610000] 5ee0: 00000100 00000000 c2c9e420 00000040 00001388 c3865f00 0000
0001 c3a9e9e0
[117362.610000] 5f00: 00000000 00000032 00000000 00000003 fffffe00 00000002 c2c6
f000 c3a9e5e0
[117362.610000] 5f20: c3a9e9e0 c3a9e5f4 00000001 00000101 c3865fc4 c3865f40 c01d
d2dc c01da844
[117362.610000] 5f40: c38483b0 c03b9508 c3865f84 c2c061d8 c3864000 c3a9e2e0 c3a9
e300 c2c06000
[117362.610000] 5f60: c3a9e5e0 00000000 c3a9e300 c2c06000 00000008 00000000 0000
0000 c3848380
[117362.610000] 5f80: c004a50c c3865f84 c3865f84 c002eadc 01010000 c384850c c386
5fc4 c3865fcc
[117362.610000] 5fa0: c381bf18 00000000 c01dcb88 00000000 00000000 00000000 c386
5ff4 c3865fc8
[117362.610000] 5fc0: c004a420 c01dcb94 00000000 00000000 c3865fd0 c3865fd0 0000
0000 00000000
[117362.610000] 5fe0: 00000000 00000000 00000000 c3865ff8 c003794c c004a3a8 450c
e458 3c1c0bee
[117362.610000] Backtrace:
[117362.610000] [<c01de474>] (unmap_urb_for_dma+0x0/0xe0) from [<c01de5c8>] (usb
_hcd_giveback_urb+0x74/0x10c)
[117362.610000]  r5:00000000 r4:c2e69ca0
[117362.610000] [<c01de554>] (usb_hcd_giveback_urb+0x0/0x10c) from [<bf0ddca0>]
(_complete+0x238/0x268 [bcm589x_otg])
[117362.610000]  r6:c2e69ca0 r5:00000002 r4:00000002
[117362.610000] [<bf0dda68>] (_complete+0x0/0x268 [bcm589x_otg]) from [<bf0df534
>] (handle_hc_xfercomp_intr+0x2f0/0x4a8 [bcm589x_otg])
[117362.610000] [<bf0df244>] (handle_hc_xfercomp_intr+0x0/0x4a8 [bcm589x_otg]) f
rom [<bf0dff28>] (dwc_otg_hcd_handle_hc_n_intr+0x228/0x9fc [bcm589x_otg])
[117362.610000] [<bf0dfd00>] (dwc_otg_hcd_handle_hc_n_intr+0x0/0x9fc [bcm589x_ot
g]) from [<bf0e0744>] (dwc_otg_hcd_handle_hc_intr+0x48/0x70 [bcm589x_otg])
[117362.610000] [<bf0e06fc>] (dwc_otg_hcd_handle_hc_intr+0x0/0x70 [bcm589x_otg])
from [<bf0e0dcc>] (dwc_otg_hcd_handle_intr+0x11c/0x1f4 [bcm589x_otg])
[117362.610000]  r7:00000001 r6:c2cb9e00 r5:02000008 r4:00000002
[117362.610000] [<bf0e0cb0>] (dwc_otg_hcd_handle_intr+0x0/0x1f4 [bcm589x_otg]) f
rom [<bf0dd990>] (dwc_otg_hcd_irq+0x14/0x20 [bcm589x_otg])
[117362.610000]  r8:00000000 r7:00000000 r6:00000001 r5:a0000193 r4:c3a9e5e0
[117362.610000] [<bf0dd97c>] (dwc_otg_hcd_irq+0x0/0x20 [bcm589x_otg]) from [<c01
dea10>] (usb_hcd_irq+0x84/0x90)
[117362.610000] [<c01de98c>] (usb_hcd_irq+0x0/0x90) from [<c0060170>] (handle_IR
Q_event+0x44/0x100)
[117362.610000]  r5:0000003a r4:c2e3ee60
[117362.610000] [<c006012c>] (handle_IRQ_event+0x0/0x100) from [<c0062918>] (han
dle_level_irq+0xac/0x174)
[117362.610000]  r8:00000002 r7:00000003 r6:0000003a r5:c2d84a20 r4:c03bc914
[117362.610000] [<c006286c>] (handle_level_irq+0x0/0x174) from [<c0023070>] (asm
_do_IRQ+0x70/0x8c)
[117362.610000]  r6:04000000 r5:00000000 r4:0000003a
[117362.610000] [<c0023000>] (asm_do_IRQ+0x0/0x8c) from [<c0023b24>] (__irq_svc+
0x44/0xe0)
[117362.610000] Exception stack(0xc3865d48 to 0xc3865d90)
[117362.610000] 5d40:                   00000001 00000000 0a9e5650 000165c1 0000
0000 00000000
[117362.610000] 5d60: c3848380 c3864000 c3904ce0 c384850c c03b94c8 c3865dc4 c392
2cb8 c3865d90
[117362.610000] 5d80: c3922cb8 c02c8b78 00000013 ffffffff
[117362.610000]  r5:d102a000 r4:ffffffff
[117362.610000] [<c02c8974>] (schedule+0x0/0x35 from [<c02c944c>] (schedule_ti
meout+0x198/0x1cc)
[117362.610000] [<c02c92b4>] (schedule_timeout+0x0/0x1cc) from [<c02c9090>] (wai
t_for_common+0xf8/0x1b4)
[117362.610000]  r7:000001f4 r6:c3864000 r5:c3848380 r4:c3865e20
[117362.610000] [<c02c8f98>] (wait_for_common+0x0/0x1b4) from [<c02c91c0>] (wait
_for_completion_timeout+0x14/0x1
[117362.610000] [<c02c91ac>] (wait_for_completion_timeout+0x0/0x1 from [<c01e1
420>] (usb_start_wait_urb+0x70/0xc0)
[117362.610000] [<c01e13b0>] (usb_start_wait_urb+0x0/0xc0) from [<c01e1658>] (us
b_control_msg+0xc8/0xec)
[117362.610000]  r8:00000080 r7:00000000 r6:00000100 r5:00000040 r4:c2c69d60
[117362.610000] [<c01e1590>] (usb_control_msg+0x0/0xec) from [<c01daafc>] (hub_p
ort_init+0x2c4/0x6ec)
[117362.610000] [<c01da838>] (hub_port_init+0x0/0x6ec) from [<c01dd2dc>] (hub_th
read+0x754/0xe04)
[117362.610000] [<c01dcb88>] (hub_thread+0x0/0xe04) from [<c004a420>] (kthread+0
x84/0x8c)
[117362.610000] [<c004a39c>] (kthread+0x0/0x8c) from [<c003794c>] (do_exit+0x0/0
x630)
[117362.610000]  r7:00000000 r6:00000000 r5:00000000 r4:00000000
[117362.610000] Code: 1a000010 e5913038 e3130008 1a00000d (e5d0300c)
[117363.360000] ---[ end trace b9c12f4ac85edd16 ]---
[117363.360000] Kernel panic - not syncing: Fatal exception in interrupt
消息看PC is at unmap_urb_for_dma+0x44/0xe0,但是看代码unmap_urb_for_dma函数没发现问题。有没有高手遇到过类似问题,指导下此问题。

论坛徽章:
0
2 [报告]
发表于 2014-02-19 09:56 |只看该作者
这个貌似是中断的问题吧。你看看是不是在中断处理函数里面你们是不是改了什么东西?导致中断进去以后就出不来了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP