AnsweredAssumed Answered

Shared etherent MAC Crash

Question asked by Ram Krishnan on Nov 17, 2016
Latest reply on Nov 18, 2016 by Ram Krishnan

We are using the T1024 processor and its DPAA capabilites. The dpaa is configured to transfer data packets from the ethernet port to a macless interfaces configured in the kernel. This code was working in the T1024rdb eval board. 

 

The target is very similarly built based on the eval board. I run the DPAA software which comes up and there are other packet transfer that work fine. But the shared ethernet data causes the kernel to crash with the following dump. 

 

 

-------------------------------------------------------------------------------------------------------------------------------

Unable to handle kernel paging request for data at address 0xa02d99c0
Faulting instruction address: 0xc0019a94
Oops: Kernel access of bad area, sig: 11 [#1]
SMP NR_CPUS=8 CoreNet Generic
Modules linked in:
CPU: 0 PID: 1263 Comm: cti_datapath Not tainted 4.1.8-rt8+gbd51baf #18
task: c4393910 ti: c5fd4000 task.ti: c4d9e000
NIP: c0019a94 LR: c0490c08 CTR: 00000009
REGS: c5fd5df0 TRAP: 0300 Not tainted (4.1.8-rt8+gbd51baf)
MSR: 00021002 <CE,ME> CR: 24002228 XER: 20000000
DEAR: a02d99c0 ESR: 00000000
GPR00: 00000000 c5fd5ea0 c4393910 c4bcd580 a02d99bc 0000004a c4bcd57c 00000009
GPR08: 00000007 00000001 00000007 000001b7 24002282 101b4a54 00000033 0000051f
GPR16: c08ddfd0 c08ddff8 c08de018 c09fd2b0 c08de034 c09fd0d0 c08de050 a02d99c0
GPR24: 00000000 0000004a a02d9000 0000004a c4bcd5ca 0000004a 00000001 e02d9a0a
NIP [c0019a94] memcpy+0x1c/0x9c
LR [c0490c08] copy_from_unmapped_area+0x128/0x140
Call Trace:
[c5fd5ea0] [c0490bf4] copy_from_unmapped_area+0x114/0x140 (unreliable)
[c5fd5ef0] [c04912c8] shared_rx_dqrr+0x268/0x490
[c5fd5f30] [c0599728] portal_isr+0x1c8/0x240
[c5fd5f60] [c0075324] handle_irq_event_percpu+0xd4/0x1c0
[c5fd5fa0] [c0075454] handle_irq_event+0x44/0x80
[c5fd5fc0] [c0078cd8] handle_fasteoi_irq+0xd8/0x1f0
[c5fd5fd0] [c007482c] generic_handle_irq+0x3c/0x70
[c5fd5fe0] [c000447c] __do_irq+0x2c/0x80
[c5fd5ff0] [c000d70c] call_do_irq+0x24/0x3c
[c4d9ff20] [c000455c] do_IRQ+0x8c/0x120
[c4d9ff40] [c000f7f0] ret_from_except+0x0/0x18
--- interrupt: 501 at 0x1002a2d8
LR = 0x1001ab1c
Instruction dump:
9c860001 4200fffc 4e800020 7c032040 418100a0 54a7e8ff 38c3fffc 3884fffc
41820028 70c00003 7ce903a6 40820054 <80e40004> 85040008 90e60004 95060008
---[ end trace e788ca880c8f1dac ]---

--------------------------------------------------------------------------------------------------------------------------------

 

What would be a good place to identify the reason for this crash. All I am doing is a simple ping from the pc and the packet size is 0x3c. The dts files are similar with similar ports enabled with dpaa. We have two eval boards one is the T1024rdb and the other is the T4240rdb and the same piece of code was running on both systems and worked fine. 

 

Thank you,

Ram Krishnan 

Outcomes