Re: USB client crash on Vybrid with USB gadget RNDIS connection

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 15-09-16 15:54:21, Peter Chen wrote:
> On Wed, Sep 16, 2015 at 02:18:49PM +0530, maitysanchayan@xxxxxxxxx wrote:
> > Hello Peter,
> > 
> > > 
> > > Enable CONFIG_DEBUG_LIST, it has below position if you
> > > run make menuconfig
> > > Kernel hacking  --->
> > > [*] Debug linked list manipulation  
> > > 
> > 
> > Sorry for the delay. When I enabled this config the first time my test
> > application ran for 24 hours or so and I did not get any stack traces.
> > 
> > I restarted the test again and finally got the trace below. You were
> > spot on, its a list corruption issue. I modified the trace a bit after
> > copying to remove the sprinkled debug messages throughout the trace
> > from my test application.
> > 
> > [  622.204134] WARNING: CPU: 0 PID: 0 at lib/list_debug.c:59 __list_del_entry+0xc4/0xe8()
> > [  622.212870] list_del corruption. prev->next should be 8db63600, but was 36008db6
> 
> You see the higher 16 bits were swapped with lower 16 bits, and the
> virtual memory address should begin from 0x8xxxxxxxx, right?

Yes, I saw that but beats me how this happens.

> 
> Check with Vybrid errata to see if all ARM/memory system have applied.

What do you mean by "all ARM/memory system have applied" ? I checked with the Vybrid errata
and I do not see anything related.

- Sanchayan.

> 
> Peter
> 
> > [  622.221119] Modules linked in:
> > [  622.225921] CPU: 0 PID: 0 Comm: swapper Not tainted 4.1.5-00004-g326879d #327
> > [ ]Hrdware name: Freescale Vybrid VF5xx/VF6xx (Device Tree)
> > [  622.241199] Backtrace:
> > [  622.245416] [<80012b78>] (dump_backtrace) from [<80012d98>] (show_stack+0x18/0x1c)
> > [  622.253810]  r7:802a5ff4 r6:0000003b r5:00000009 r4:00000000
> > [  622.263424] [<80012d80>] (show_stack) from [<80590990>] (dump_stack+0x24/0x28)
> > [  622.271496] [<8059096c>] (dump_stack) from [<80023e24>] (warn_slowpath_common+0x88/0xb4)
> > [  622.280438] [<80023d9c>] (warn_slowpath_common) from [<80023e88>] (warn_slowpath_fmt+0x38/0x40)
> > [  622.289980]  r8:8d99a8bc r7:8e02f464Cl r6:8d99a880 r5:0000007 r4:80704238ient
> > [  622.300980] [<80023e54>] (warn_slowpath_fmt) from [<802a5ff4>] (__list_del_entry+0xc4/0xe8)
> > [  622.310175]  r3:8db63600 r2:80704238
> > [  622.316275]  r4:8d99a8bc
> > [  622.320479] [<802a5f30>] (__list_del_entry) from [<803a0740>] (udc_irq+0x3d8/0xcdc)
> > [  622.328986] [<803a0368>] (udc_irq) from [<8039d6bc>] (ci_irq+0x58/0x11c)
> > [  622.336531]  r10:807ddefe r9:8e0bd480 r8:00000027 r7:00000000 r6:00000000 r5:807bd6c4
> > [  622.349426]  r4:8e02f010
> > [  622.353633] [<8039d664>] (ci_irq) from [<8004d670>] (handle_irq_event_percpu+0x80/0x148)
> > [  622.362557]  r5:807bd6c4 r4:8e2d0880
> > [  622.366600] [<8004d5f0>] (handle_irq_event_percpu) from [<8004d768>] (handle_irq_event+0x30/0x40)
> > [  622.375470]  r10:807ac0d4 r9:807d2540 r8:8e006000 r7:00000000 r6:00000000 r5:807bd6c4
> > [  622.383385]  r4:8e0bd480
> > [  622.385947] [<8004d738>] (handle_irq_event) from [<8004fce0>] (handle_fasteoi_irq+0xa4/0x16c)
> > [  622.394476]  r5:807bd6c4 r4:8e0bd480
> > [  622.398095] [<8004fc3c>] (handle_fasteoi_irq) from [<8004cdd8>] (generic_handle_irq+0x34/0x44)
> > [  622.406712]  r5:00000027 r4:00000027
> > [  622.410330] [<8004cda4>] (generic_handle_irq) from [<8004d03c>] (__handle_domain_irq+0x5c/0xb0)
> > [  622.419027]  r5:00000027 r4:807bd4fc
> > [  622.422643] [<8004cfe0>] (__handle_domain_irq) from [<80009364>] (gic_handle_irq+0x2c/0x5c)
> > [  622.430994]  r9:807d2540 r8:807ac0cc r7:90002100 r6:807abf20 r5:807ac364 r4:9000210c
> > [  622.438834] [<80009338>] (gic_handle_irq) from [<80013800>] (__irq_svc+0x40/0x54)
> > [  622.446323] Exception stack(0x807abf20 to 0x807abf68)
> > [  622.451396] bf20: 00000001 00000000 00000000 8001d7a0 807aa000 807ac0cc 00000000 00000000
> > [  622.459586] bf40: 807ac0cc 807d2540 807ac0d4 807abf74 807abf78 807abf68 80010028 8001002c
> > [  622.467768] bf60: 60010013 ffffffff
> > [  622.471262]  r7:807abf54 r6:ffffffff r5:60010013 r4:8001002c
> > [  622.477007] [<8000ffec>] (arch_cpu_idle) from [<80045f14>] (cpu_startup_entry+0x1c8/0x254)
> > [  622.485297] [<80045d4c>] (cpu_startup_entry) from [<8058f3bc>] (rest_init+0x78/0x7c)
> > [  622.493045]  r7:ffffffff
> > [  622.495614] [<8058f344>] (rest_init) from [<80777cd4>] (start_kernel+0x390/0x39c)
> > [  622.503117] [<80777944>] (start_kernel) from [<80008078>] (0x80008078)
> > [  622.509648] ---[ end trace 4342257fd07cce01 ]---
> > 
> > [snip] Had some prints from test app here
> > 
> > [  622.514298] ------------[ cut here ]------------
> > [  622.518935] WARNING: CPU: 0 PID: 0 at lib/list_debug.c:33 __list_add+0xac/0xe0()
> > [  622.526339] list_add corruption. prev->next should be next (8d99a8bc), but was 8db63600. (prev=8db63600).
> > [  622.535905] Modules linked in:
> > [  622.538988] CPU: 0 PID: 0 Comm: swapper Tainted: G        W       4.1.5-00004-g326879d #327
> > [  622.547345] Hardware name: Freescale Vybrid VF5xx/VF6xx (Device Tree)
> > [  622.553782] Backtrace:
> > [  622.556259] [<80012b78>] (dump_backtrace) from [<80012d98>] (show_stack+0x18/0x1c)
> > [  622.563834]  r7:802a5efc r6:00000021 r5:00000009 r4:00000000
> > [  622.569571] [<80012d80>] (show_stack) from [<80590990>] (dump_stack+0x24/0x28)
> > [  622.576814] [<8059096c>] (dump_stack) from [<80023e24>] (warn_slowpath_common+0x88/0xb4)
> > [  622.584917] [<80023d9c>] (warn_slowpath_common) from [<80023e88>] (warn_slowpath_fmt+0x38/0x40)
> > [  622.593618]  r8:8d99a8b4 r7:8e02f464 r6:8d99a8bc r5:8db63600 r4:80704150
> > [  622.600408] [<80023e54>] (warn_slowpath_fmt) from [<802a5efc>] (__list_add+0xac/0xe0)
> > [  622.608241]  r3:8d99a8bc r2:80704150
> > [  622.611842]  r4:8db1c280
> > [  622.614401] [<802a5e50>] (__list_add) from [<8039f4ac>] (add_td_to_list+0x12c/0x19c)
> > [  622.622144]  r6:00000800 r5:8d99a880 r4:8db1c280
> > [  622.626821] [<8039f380>] (add_td_to_list) from [<8039ffb8>] (_ep_queue.isra.22+0x144/0x46c)
> > [  622.635170]  r9:8e02f010 r8:8d99a8b4 r7:00000800 r6:00000800 r5:8e02f464 r4:8d99a880
> > [  622.643013] [<8039fe74>] (_ep_queue.isra.22) from [<803a0358>] (ep_queue+0x30/0x40)
> > [  622.650669]  r10:8d99a8bc r9:8cfffa80 r8:8e02f464 r7:00000020 r6:8d99a880 r5:8da20460
> > [  622.658584]  r4:a0010193
> > [  622.661142] [<803a0328>] (ep_queue) from [<803afa6c>] (rx_submit+0xd4/0x14c)
> > [  622.668191]  r5:8da20460 r4:00000800
> > [  622.671803] [<803af998>] (rx_submit) from [<803afec0>] (rx_complete+0x164/0x20c)
> > [  622.679204]  r9:a0010193 r8:00000000 r7:8da20480 r6:8d99a880 r5:00000000 r4:8da20460
> > [  622.687052] [<803afd5c>] (rx_complete) from [<803a9040>] (usb_gadget_giveback_request+0x14/0x18)
> > [  622.695840]  r9:8e02f464 r8:8d99a8bc r7:8e02f464 r6:8d99a880 r5:8d99a8b4 r4:0000007e
> > [  622.703684] [<803a902c>] (usb_gadget_giveback_request) from [<803a082c>] (udc_irq+0x4c4/0xcdc)
> > [  622.712309] [<803a0368>] (udc_irq) from [<8039d6bc>] (ci_irq+0x58/0x11c)
> > [  622.719011]  r10:807ddefe r9:8e0bd480 r8:00000027 r7:00000000 r6:00000000 r5:807bd6c4
> > [  622.726926]  r4:8e02f010
> > [  622.729485] [<8039d664>] (ci_irq) from [<8004d670>] (handle_irq_event_percpu+0x80/0x148)
> > [  622.737574]  r5:807bd6c4 r4:8e2d0880
> > [  622.741193] [<8004d5f0>] (handle_irq_event_percpu) from [<8004d768>] (handle_irq_event+0x30/0x40)
> > [  622.750063]  r10:807ac0d4 r9:807d2540 r8:8e006000 r7:00000000 r6:00000000 r5:807bd6c4
> > [  622.757977]  r4:8e0bd480
> > [  622.760537] [<8004d738>] (handle_irq_event) from [<8004fce0>] (handle_fasteoi_irq+0xa4/0x16c)
> > [  622.769068]  r5:807bd6c4 r4:8e0bd480
> > [  622.772686] [<8004fc3c>] (handle_fasteoi_irq) from [<8004cdd8>] (generic_handle_irq+0x34/0x44)
> > [  622.781296]  r5:00000027 r4:00000027
> > [  622.784913] [<8004cda4>] (generic_handle_irq) from [<8004d03c>] (__handle_domain_irq+0x5c/0xb0)
> > [  622.793610]  r5:00000027 r4:807bd4fc
> > [  622.797226] [<8004cfe0>] (__handle_domain_irq) from [<80009364>] (gic_handle_irq+0x2c/0x5c)
> > [  622.805578]  r9:807d2540 r8:807ac0cc r7:90002100 r6:807abf20 r5:807ac364 r4:9000210c
> > [  622.813417] [<80009338>] (gic_handle_irq) from [<80013800>] (__irq_svc+0x40/0x54)
> > [  622.820906] Exception stack(0x807abf20 to 0x807abf68)
> > [  622.825976] bf20: 00000001 00000000 00000000 8001d7a0 807aa000 807ac0cc 00000000 00000000
> > [  622.834169] bf40: 807ac0cc 807d2540 807ac0d4 807abf74 807abf78 807abf68 80010028 8001002c
> > [  622.842352] bf60: 60010013 ffffffff
> > [  622.845845]  r7:807abf54 r6:ffffffff r5:60010013 r4:8001002c
> > [  622.851584] [<8000ffec>] (arch_cpu_idle) from [<80045f14>] (cpu_startup_entry+0x1c8/0x254)
> > [  622.859870] [<80045d4c>] (cpu_startup_entry) from [<8058f3bc>] (rest_init+0x78/0x7c)
> > [  622.867619]  r7:ffffffff
> > [  622.870181] [<8058f344>] (rest_init) from [<80777cd4>] (start_kernel+0x390/0x39c)
> > [  622.877681] [<80777944>] (start_kernel) from [<80008078>] (0x80008078)
> > [  622.884213] ---[ end trace 4342257fd07cce02 ]---
> > [  623.357829] Unable to handle kernel NULL pointer dereference at virtual address 00000004
> > [  623.365951] pgd = 80004000
> > [  623.368666] [00000004] *pgd=00000000
> > [  623.372276] Internal error: Oops: 5 [#1] ARM
> > [  623.376554] Modules linked in:
> > [  623.379637] CPU: 0 PID: 0 Comm: swapper Tainted: G        W       4.1.5-00004-g326879d #327
> > [  623.387991] Hardware name: Freescale Vybrid VF5xx/VF6xx (Device Tree)
> > [  623.394443] task: 807b04b0 ti: 807aa000 task.ti: 807aa000
> > [  623.399870] PC is at udc_irq+0x3f8/0xcdc
> > [  623.403798] LR is at 0x8db63600
> > [  623.406953] pc : [<803a0760>]    lr : [<8db63600>]    psr: 20070193
> > [  623.406953] sp : 807abdd0  ip : 8db0febc  fp : 807abe3c
> > [  623.418437] r10: 8db0febc  r9 : 8db0febc  r8 : 8d99a8bc
> > [  623.423671] r7 : 8e02f464  r6 : 8d99a880  r5 : 0000006c  r4 : 8db0febc
> > [  623.430206] r3 : 00000000  r2 : 00200200  r1 : 8db0febc  r0 : 8db63600
> > [  623.436743] Flags: nzCv  IRQs off  FIQs on  Mode SVC_32  ISA ARM  Segment kernel
> > [  623.444144] Control: 10c5387d  Table: 8d89c059  DAC: 00000015
> > [  623.449896] Process swapper (pid: 0, stack limit = 0x807aa208)
> > [  623.455738] Stack: (0x807abdd0 to 0x807ac000)
> > [  623.460110] bdc0:                                     00000000 807f603c 8039fae8 8e02f408
> > [  623.468305] bde0: 807ac044 00000001 8e02f49c 8e02f464 8e02f010 8e02f010 00000001 8d99a8b4
> > [  623.476497] be00: 8d99a200 8e02f4bc 802d8a50 8045b69c 807abe5c 8e02f010 807bd6c4 00000000
> > [  623.484689] be20: 00000000 00000027 8e0bd480 807ddefe 807abe54 807abe40 8039d6bc 803a0374
> > [  623.492882] be40: 8e2d0880 807bd6c4 807abe8c 807abe58 8004d670 8039d670 eafa9486 00000090
> > [  623.501074] be60: ffffffff 8e0bd480 807bd6c4 00000000 00000000 8e006000 807d2540 807ac0d4
> > [  623.509267] be80: 807abea4 807abe90 8004d768 8004d5fc 8e0bd480 807bd6c4 807abebc 807abea8
> > [  623.517459] bea0: 8004fce0 8004d744 00000027 00000027 807abed4 807abec0 8004cdd8 8004fc48
> > [  623.525651] bec0: 807bd4fc 00000027 807abefc 807abed8 8004d03c 8004cdb0 9000210c 807ac364
> > [  623.533844] bee0: 807abf20 90002100 807ac0cc 807d2540 807abf1c 807abf00 80009364 8004cfec
> > [  623.542036] bf00: 8001002c 60070013 ffffffff 807abf54 807abf74 807abf20 80013800 80009344
> > [  623.550228] bf20: 00000001 00000000 00000000 8001d7a0 807aa000 807ac0cc 00000000 00000000
> > [  623.558421] bf40: 807ac0cc 807d2540 807ac0d4 807abf74 807abf78 807abf68 80010028 8001002c
> > [  623.566613] bf60: 60070013 ffffffff 807abf9c 807abf78 80045f14 8000fff8 807ddefc 807de0c0
> > [  623.574806] bf80: 807abf9c 807b4350 80591ee8 ffffffff 807abfac 807abfa0 8058f3bc 80045d58
> > [  623.582998] bfa0: 807abff4 807abfb0 80777cd4 8058f350 ffffffff ffffffff 807776d4 00000000
> > [  623.591190] bfc0: 00000000 807a1228 00000000 807de294 807ac074 807a1224 807b16e8 80004059
> > [  623.599382] bfe0: 410fc051 00000000 00000000 807abff8 80008078 80777950 00000000 00000000
> > [  623.607559] Backtrace:
> > [  623.610047] [<803a0368>] (udc_irq) from [<8039d6bc>] (ci_irq+0x58/0x11c)
> > [  623.616753]  r10:807ddefe r9:8e0bd480 r8:00000027 r7:00000000 r6:00000000 r5:807bd6c4
> > [  623.624666]  r4:8e02f010
> > [  623.627237] [<8039d664>] (ci_irq) from [<8004d670>] (handle_irq_event_percpu+0x80/0x148)
> > [  623.635333]  r5:807bd6c4 r4:8e2d0880
> > [  623.638950] [<8004d5f0>] (handle_irq_event_percpu) from [<8004d768>] (handle_irq_event+0x30/0x40)
> > [  623.647820]  r10:807ac0d4 r9:807d2540 r8:8e006000 r7:00000000 r6:00000000 r5:807bd6c4
> > [  623.655734]  r4:8e0bd480
> > [  623.658297] [<8004d738>] (handle_irq_event) from [<8004fce0>] (handle_fasteoi_irq+0xa4/0x16c)
> > [  623.666826]  r5:807bd6c4 r4:8e0bd480
> > [  623.670444] [<8004fc3c>] (handle_fasteoi_irq) from [<8004cdd8>] (generic_handle_irq+0x34/0x44)
> > [  623.679053]  r5:00000027 r4:00000027
> > [  623.682671] [<8004cda4>] (generic_handle_irq) from [<8004d03c>] (__handle_domain_irq+0x5c/0xb0)
> > [  623.691368]  r5:00000027 r4:807bd4fc
> > [  623.694986] [<8004cfe0>] (__handle_domain_irq) from [<80009364>] (gic_handle_irq+0x2c/0x5c)
> > [  623.703335]  r9:807d2540 r8:807ac0cc r7:90002100 r6:807abf20 r5:807ac364 r4:9000210c
> > [  623.711176] [<80009338>] (gic_handle_irq) from [<80013800>] (__irq_svc+0x40/0x54)
> > [  623.718664] Exception stack(0x807abf20 to 0x807abf68)
> > [  623.723734] bf20: 00000001 00000000 00000000 8001d7a0 807aa000 807ac0cc 00000000 00000000
> > [  623.731927] bf40: 807ac0cc 807d2540 807ac0d4 807abf74 807abf78 807abf68 80010028 8001002c
> > [  623.740109] bf60: 60070013 ffffffff
> > [  623.743603]  r7:807abf54 r6:ffffffff r5:60070013 r4:8001002c
> > [  623.749356] [<8000ffec>] (arch_cpu_idle) from [<80045f14>] (cpu_startup_entry+0x1c8/0x254)
> > [  623.757644] [<80045d4c>] (cpu_startup_entry) from [<8058f3bc>] (rest_init+0x78/0x7c)
> > [  623.765386]  r7:ffffffff
> > [  623.767954] [<8058f344>] (rest_init) from [<80777cd4>] (start_kernel+0x390/0x39c)
> > [  623.775447] [<80777944>] (start_kernel) from [<80008078>] (0x80008078)
> > [  623.781990] Code: e594c000 0a00005f e594300c e1a09004 (e5933004)
> > [  623.788102] ---[ end trace 4342257fd07cce03 ]---
> > [  623.792727] Kernel panic - not syncing: Fatal exception in interrupt
> > [  623.799090] ---[ end Kernel panic - not syncing: Fatal exception in interrupt
> > 
> > 
> > Thanks & Regards,
> > Sanchayan Maity.
> 
> -- 
> 
> Best Regards,
> Peter Chen
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux