打印

分析别人的一个bug

[复制链接]
6985|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
TI佟掌柜|  楼主 | 2011-10-25 12:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
BUG, AC, TE, ce, TI
硬件背景:

CPU : pxa255b

kernel: Linux2.4.18

touch screen

USB-Host Controller: cypress 的 SL811HST

开发要求是这样:

原来的PXA255B没有USB-Host控制器,因为有此需求,所以要加上一个UHC 我选择了上面的主控器件. 刚开始用鼠标做实验,出现很多问题,不过都已经解决,现在鼠标能够正常使用,但是当我插上优盘的时候出现了如下的错误:

usb.c: the registered device number is 2
                                                                                                              

hub.c: USB new device connect on bus1/1, assigned device number 2

usb_control/bulk_msg: timeout

usb.c: USB device not accepting new address=2 (error=-110)

Unable to handle kernel NULL pointer dereference at virtual address 0000002c

pgd = c3ac0000

*pgd = 00000000, *pmd = 00000000

Internal error: Oops: 0

CPU: 0

pc : [<c693135c>]    lr : [<00000000>]    Not tainted

sp : c3ac7e00  ip : 00000002  fp : c3ac7e4c

r10: c3ac7e50  r9 : 00000000  r8 : 00000008

r7 : 00000000  r6 : c37e3000  r5 : c3a2d9c0  r4 : 00000001

r3 : 00000004  r2 : 00000000  r1 : 00000028  r0 : c37e3060

Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  Segment user

Control: 397F  Table: A3AC0000  DAC: 00000015

Process syslogd (pid: 45, stackpage=c3ac7000)

Stack: (0xc3ac7df0 to 0xc3ac8000)

7de0:                                     00000000 c693135c 60000013 ffffffff

7e00: 00000000 c3ac6000 00000000 00000000 00000001 00000000 c00a8154 00000000

7e20: c3e4fce5 c69338d8 c37e3000 00000000 c02345b8 c0234218 c3ac7ee4 c023ca40

7e40: c3ac7e6c c3ac7e50 c693276c c6931254 00000000 c3e4fb60 0000001d 00000000

7e60: c3ac7e98 c3ac7e70 c0065f68 c69325d4 00000080 00000007 c3ac7ee4 c0234258

7e80: c0234218 c3ac7ee4 c023ca40 c3ac7eb4 c3ac7e9c c006cfe4 c0065eb8 c0222f38

7ea0: 00000002 20000000 c3ac7ee0 c3ac7eb8 c0065f68 c006cf68 c3ac7f18 f8d00000

7ec0: 00000100 c006c674 80000013 ffffffff 00000000 c3ac7f48 c3ac7ee4 c0065300

7ee0: c0065eb8 40016dc0 40017000 00000001 00001000 c3ac6000 40016000 c001b3a0

7f00: 40017000 00001000 00000000 00000000 c3ac7f48 c3ac7f4c c3ac7f2c c00820b4

7f20: c006c674 80000013 ffffffff c3a5f860 40016000 c001b3a0 40016000 c3ac7f84

7f40: c3ac7f4c c0084958 c0082060 0aac7f8c 00001000 c3a5f800 c3ad8240 c001b3a0

7f60: 00001000 40016000 c001b3bc c0065824 c3ac6000 401342fc c3ac7fa4 c3ac7f88

7f80: c0084a24 c0084720 bfffec60 00000000 bfffed2c 0000005b 00000000 c3ac7fa8

7fa0: c00656a0 c00849f4 bfffec60 c006b488 40016000 00001000 40016000 fbad2cc4

7fc0: bfffec60 00000000 bfffed2c 0201bfd0 00000000 40133c88 401342fc bfffeb70

7fe0: bfffeb74 bfffeb58 40091c18 400e8724 60000010 40016000 00000000 00000000

Backtrace:

Function entered at [<c6931248>] from [<c693276c>]

Function entered at [<c69325c8>] from [<c0065f68>]
r6 = 00000000  r5 = 0000001D  r4 = C3E4FB60

Function entered at [<c0065eac>] from [<c006cfe4>]

Function entered at [<c006cf5c>] from [<c0065f68>]
r6 = 20000000  r5 = 00000002  r4 = C0222F38

Function entered at [<c0065eac>] from [<c0065300>]

Function entered at [<c0082054>] from [<c0084958>]
r7 = 40016000  r6 = C001B3A0  r5 = 40016000  r4 = C3A5F860

Function entered at [<c0084714>] from [<c0084a24>]

Function entered at [<c00849e8>] from [<c00656a0>]
r7 = 0000005B  r6 = BFFFED2C  r5 = 00000000  r4 = BFFFEC60

Code: 13a03000 e2811028 e1a027a2 e202200f (e7913003)

Kernel panic: Aiee, killing interrupt handler!

In interrupt handler - not syncing

然后系统就死掉, 看错误信息好像是中断处理程序有问题,我用示波器也看到中断信号在系统崩溃时开始一直处于高电平,就是不知道为什么会有这种现象,我用鼠标的时候就不会出现啊!另外有人说我的内核不支持Fat16的文件系统,可是我编译内核的时候已经选择支持了,还有就是在调试鼠标的时候,USB device not accepting new address这种现象也出现过,并不是别的scsi或者PCI总线占用了我的中断,再说现在鼠标能正常使用,说明这个假设更加不存在,那到底是什么原因呢?

找遍了各个地方没找到对策,实在不知道这个问题该怎么解决,还请高手不吝赐教!
沙发
TI过客| | 2011-10-25 13:02 | 只看该作者
不懂 ,顶起来

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

113

帖子

1

粉丝