]> git.karo-electronics.de Git - karo-tx-linux.git/commit
ENGR00215354 MX6 USB Host:fix kernel dump when no platform_data
authormake shi <b15407@freescale.com>
Fri, 29 Jun 2012 08:56:02 +0000 (16:56 +0800)
committerLothar Waßmann <LW@KARO-electronics.de>
Fri, 24 May 2013 06:34:55 +0000 (08:34 +0200)
commit70ef24a50b91ede1c1ec806ffd3f89f7db886f86
tree6147e7703c8c7a30f56d21de7a75d44d5a302d10
parentd9bbb6ed246971bfc19954af0020cd96e1c6c180
ENGR00215354 MX6 USB Host:fix kernel dump when no platform_data

Kernel dump when no platform_data.
PC is at hub_thread+0xdb0/0x1538
LR is at 0xbfd43400
pc : [<80311eb4>]    lr : [<bfd43400>]    psr: 60000013
sp : bfdbff08  ip : ba3cd500  fp : ba3cd600
r10: bfd43400  r9 : 00000000  r8 : 00000001
r7 : 00000000  r6 : 00000000  r5 : ba3cd600  r4 : 00000001
r3 : 00000000  r2 : bfd24c60  r1 : bfd43400  r0 : 00000000
Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment kernel
Control: 10c53c7d  Table: 1000404a  DAC: 00000015
Process khubd (pid: 338, stack limit = 0xbfdbe2f0)
Stack: (0xbfdbff08 to 0xbfdc0000)
ff00:                   00000101 00000000 80a01d38 8c008f40 bfdbff3c 8006612c
ff20: bff8c000 bfd43400 bfd43400 ba3cd648 ba62a220 ba3cd608 bfd4349c ba62a200
ff40: 00000000 ba3cd644 ba3cd640 00000101 00000001 0000009e ba3cd500 ba62a220
ff60: 00000009 ba3cd64c bfdbff9c 800654ac ba3cd6a4 bfdbe000 00000000 bfeac3a0
ff80: 8008d700 bfdbff84 bfdbff84 00000000 01010000 00000001 bfdbffbc bff8bf48
ffa0: bfdbffcc 00000000 80311104 00000000 00000000 00000000 00000000 8008d330
ffc0: bff8bf48 00000000 00000000 00000000 00000000 00000000 bfdbffd8 bfdbffd8
ffe0: 00000000 bff8bf48 8008d2ac 80042040 00000013 80042040 00000000 00000000
[<80311eb4>] (hub_thread+0xdb0/0x1538) from [<8008d330>] (kthread+0x84/0x8c)
[<8008d330>] (kthread+0x84/0x8c) from [<80042040>] (kernel_thread_exit+0x0/0x8)

If no platform_data ,the pdata will be NULL.If the driver try to access the
pdata->platform_set_disconnect_det,dump will occor.SO we should check the
pdata is NULL before checking  pdata->platform_set_disconnect_det.

Signed-off-by: make shi <b15407@freescale.com>
drivers/usb/core/hub.c
drivers/usb/host/ehci-hub.c