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

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

 



On 2015-09-17 22:39, Peter Chen wrote:
> On Wed, Sep 16, 2015 at 02:48:50PM +0530, maitysanchayan@xxxxxxxxx wrote:
>> 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.
>>
> 
> Just system level errata, like ARM Cortex A5, memory (L1/L2 Cache), etc.
> 
> Would you please do more tests to see if the error pattern is always
> the same? And print the address to store prev-next.

I checked this once, if I am not mistaken, all Vybrids, even the oldest
one I could grab, had the latest revision of the Cortex-A5 CPU (r0p1).

Also the PL310 cache controller was of the same, fairly recent revision
r3p2 (Cache ID 0x410000c8 for the one I have a sample output below).

Sample boot log:
http://www.agner.ch/vybrid-vf610-3.19-rc6-smp-fixup.txt 

Shawn once removed two PL310 related erratas:
http://lists.infradead.org/pipermail/linux-arm-kernel/2014-July/268560.html

I think we could also remove the third errata for Vybrid
(PL310_ERRATA_769419), however I hesitated to send a patch for that so
far.

--
Stefan
--
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