Sorry, you need to enable JavaScript to visit this website.

Linux kernel panic during mmc0 DMA on UltraZed

Unsolved
1 post / 0 new
jwilly's picture
jwilly
Junior(0)
Linux kernel panic during mmc0 DMA on UltraZed

With Xilinx linux kernel version 4.6 sustained transfers from/to mmc0 the kernel will panic. Is there a patch to workaround or fix this problem?
------------------- Trace -----------------------------------
Linux ultrazed 4.6.0-dirty #1 SMP Fri May 12 14:54:54 PDT 2017 aarch64 aarch64 aarch64 GNU/Linux
 
Unpacking vim-runtime (2:7.4.1689-3ubuntu1.2) ... [ 155.980770] mmc0: ADMA error [ 155.986983] mmcblk0: error -5 transferring data, sector 5152824, nr 224, cmd response 0x900, card status 0xc00 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180358, mask=0x40000, value=0x40000 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180314, mask=0x2000000, value=0x2000000 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180314, mask=0x1000000, value=0x1000000 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180314, mask=0xFF0000, value=0x150000 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180314, mask=0x2000000, value=0x0 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180318, mask=0x400000, value=0x400000 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180318, mask=0x3F0000, value=0x50000 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180358, mask=0x40000, value=0x0 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180358, mask=0x40000, value=0x40000 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180314, mask=0x2000000, value=0x2000000 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180314, mask=0x1000000, value=0x1000000 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180314, mask=0xFF0000, value=0x150000 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180314, mask=0x2000000, value=0x0 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180318, mask=0x400000, value=0x400000 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180318, mask=0x3F0000, value=0x50000 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180358, mask=0x40000, value=0x0 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180358, mask=0x40000, value=0x40000 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180314, mask=0x2000000, value=0x2000000 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180314, mask=0x1000000, value=0x1000000 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180314, mask=0xFF0000, value=0x150000 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180314, mask=0x2000000, value=0x0 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180318, mask=0x400000, value=0x400000 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180318, mask=0x3F0000, value=0x50000 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180358, mask=0x40000, value=0x0 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180358, mask=0x40000, value=0x40000 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180314, mask=0x2000000, value=0x2000000 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180314, mask=0x1000000, value=0x1000000 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180314, mask=0xFF0000, value=0x150000 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180314, mask=0x2000000, value=0x0 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180318, mask=0x400000, value=0x400000 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180318, mask=0x3F0000, value=0x50000 PMUFW: PmMmioWrite: (NODE_APU) addr=0xFF180358, mask=0x40000, value=0x0 [ 156.153855] Unable to handle kernel paging request at virtual address ffffffdd32bde880 [ 156.277441] pgd = ffffffc033071000 [ 156.280814] [ffffffdd32bde880] *pgd=0000000000000000, *pud=0000000000000000 [ 156.287757] Internal error: Oops: 96000145 [#1] SMP [ 156.292617] Modules linked in: [ 156.295656] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 4.6.0-dirty #1 [ 156.301991] Hardware name: ZynqMP ZCU102 RevB (DT) [ 156.306766] task: ffffff8008b76400 ti: ffffff8008b68000 task.ti: ffffff8008b68000 [ 156.314241] PC is at __dma_inv_range+0x38/0x50 [ 156.318659] LR is at __swiotlb_unmap_page+0x6c/0x98 [ 156.323518] pc : [] lr : [] pstate: 40000145 [ 156.330896] sp : ffffffc83ff4adf0 [ 156.334192] x29: ffffffc83ff4adf0 x28: 0000000080c0c052 [ 156.339485] x27: ffffff800905cfb0 x26: 27202c5d32bde880 [ 156.344780] x25: ffffff8008b79af0 x24: ffffff8008b799a8 [ 156.350075] x23: 000000003b9aca00 x22: 0000000000000040 [ 156.355376] x21: 0000000000000600 x20: 27202c5d32bde880 [ 156.360670] x19: ffffffc03381b610 x18: 0000000000000062 [ 156.365965] x17: 0000007fb11bc028 x16: ffffff80081bae88 [ 156.371259] x15: 0032fbac4b904e3e x14: 0000000000000000 [ 156.376554] x13: 0000000000000000 x12: 0000000000000018 [ 156.381849] x11: ffffffc033a36880 x10: 0000000000000780 [ 156.387144] x9 : ffffffc83d4000e0 x8 : 0000000000000680 [ 156.392438] x7 : ffffff800855edc0 x6 : 0000000000000052 [ 156.397733] x5 : ffffff8008092e50 x4 : 0000000000000000 [ 156.403028] x3 : 000000000000003f x2 : 0000000000000040 [ 156.408323] x1 : ffffffdd32bdee80 x0 : ffffffdd32bde880 [ 156.413617] [ 156.415095] Process swapper/0 (pid: 0, stack limit = 0xffffff8008b68020) [ 156.421782] Stack: (0xffffffc83ff4adf0 to 0xffffff8008b6c000) [ 156.427509] Call trace: [ 156.429940] Exception stack(0xffffffc83ff4ac30 to 0xffffffc83ff4ad50) [ 156.436365] ac20: ffffffc03381b610 27202c5d32bde880 [ 156.444184] ac40: ffffffc83ff4adf0 ffffff8008094d98 0000000000000400 0000000000000000 [ 156.451995] ac60: 0000000100000000 0000000000000001 0000000000000000 0000000000000000 [ 156.459807] ac80: ffffffc83d898880 0000000000000000 0000000000001000 0000000000000000 [ 156.467619] aca0: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 [ 156.475431] acc0: 0000000000000000 0000000000000000 ffffffdd32bde880 ffffffdd32bdee80 [ 156.483243] ace0: 0000000000000040 000000000000003f 0000000000000000 ffffff8008092e50 [ 156.491055] ad00: 0000000000000052 ffffff800855edc0 0000000000000680 ffffffc83d4000e0 [ 156.498867] ad20: 0000000000000780 ffffffc033a36880 0000000000000018 0000000000000000 [ 156.506678] ad40: 0000000000000000 0032fbac4b904e3e [ 156.511535] [] __dma_inv_range+0x38/0x50 [ 156.517005] [] gem_rx+0x9c/0x258 [ 156.521776] [] macb_poll+0x54/0x110 [ 156.526813] [] net_rx_action+0x1d8/0x2b0 [ 156.532280] [] __do_softirq+0xfc/0x218 [ 156.537574] [] irq_exit+0x88/0xd0 [ 156.542436] [] __handle_domain_irq+0x60/0xb8 [ 156.548250] [] gic_handle_irq+0x64/0xc0 [ 156.553630] Exception stack(0xffffff8008b6be00 to 0xffffff8008b6bf20) [ 156.560055] be00: 0000000000000000 0000000000000000 0000000000000001 0000000000000000 [ 156.567874] be20: 0000004837406000 00000000000001c0 00000003c345f29c 00000000ffff7381 [ 156.575686] be40: 00000000ffff7382 ffffff8008b68000 0000000000000780 ffffffc033a36880 [ 156.583497] be60: 0000000000000018 0000000000000000 0000000000000000 0032fbac4b904e3e [ 156.591310] be80: ffffff80081bae88 0000007fb11bc028 0000000000000062 0000000000000000 [ 156.599122] bea0: ffffff8008b68000 ffffff8008b6d000 ffffff8008b68000 ffffff8008b6d000 [ 156.606934] bec0: ffffff8008b48cf8 ffffff8008bef000 ffffff8008b68000 0000000000000000 [ 156.614746] bee0: 000000000083a000 ffffff8008b6bf20 ffffff8008085d2c ffffff8008b6bf20 [ 156.622558] bf00: ffffff8008085d30 0000000000000145 ffffff8008b6bf30 7fffffffffffffff [ 156.630370] [] el1_irq+0xa0/0x100 [ 156.635224] [] arch_cpu_idle+0x10/0x18 [ 156.640521] [] cpu_startup_entry+0x144/0x1d8 [ 156.646336] [] rest_init+0x6c/0x78 [ 156.651283] [] start_kernel+0x388/0x39c [ 156.656663] [] 0xffffff80080811d8 [ 156.661524] Code: 8a230000 54000060 d50b7e20 14000002 (d5087620) [ 156.667607] ---[ end trace 7921b4713e3c70cf ]--- [ 156.672202] Kernel panic - not syncing: Fatal exception in interrupt [ 156.678538] CPU1: stopping [ 156.681229] CPU: 1 PID: 0 Comm: swapper/1 Tainted: G D 4.6.0-dirty #1 [ 156.688784] Hardware name: ZynqMP ZCU102 RevB (DT) [ 156.693550] Call trace: [ 156.695984] [] dump_backtrace+0x0/0x190 [ 156.701366] [] show_stack+0x14/0x20 [ 156.706403] [] dump_stack+0x94/0xb8 [ 156.711434] [] handle_IPI+0x1a4/0x1b8 [ 156.716642] [] gic_handle_irq+0xa0/0xc0 [ 156.722022] Exception stack(0xffffffc83ff5f050 to 0xffffffc83ff5f170) [ 156.728446] f040: ffffffc83d8d3e40 ffffffc83d8d0000 [ 156.736266] f060: ffffffc83d8d3f60 ffffff8008085d30 0000000000000145 ffffff8008b48cf8 [ 156.744078] f080: ffffffc83d8d3f60 ffffffc83d8d3e40 0000000000000000 0000000000000000 [ 156.751889] f0a0: ffffffc83d3a1000 0000000000000000 0000000000000000 0000000000000000 [ 156.759701] f0c0: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 [ 156.767513] f0e0: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 [ 156.775325] f100: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 [ 156.783137] f120: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 [ 156.790949] f140: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 [ 156.798760] f160: 0000000000000000 0000000000000000 [ 156.803615] [] el1_irq+0xa0/0x100 [ 156.808476] [] arch_cpu_idle+0x10/0x18 [ 156.813772] [] cpu_startup_entry+0x144/0x1d8 [ 156.819587] [] secondary_start_kernel+0x170/0x1c8 [ 156.825836] [<000000000008285c>] 0x8285c [ 156.829740] CPU3: stopping [ 156.832434] CPU: 3 PID: 0 Comm: swapper/3 Tainted: G D 4.6.0-dirty #1 [ 156.839989] Hardware name: ZynqMP ZCU102 RevB (DT) [ 156.844756] Call trace: [ 156.847189] [] dump_backtrace+0x0/0x190 [ 156.852571] [] show_stack+0x14/0x20 [ 156.857606] [] dump_stack+0x94/0xb8 [ 156.862639] [] handle_IPI+0x1a4/0x1b8 [ 156.867847] [] gic_handle_irq+0xa0/0xc0 [ 156.873228] Exception stack(0xffffffc83ff87050 to 0xffffffc83ff87170) [ 156.879652] 7040: ffffffc83d8dfe40 ffffffc83d8dc000 [ 156.887471] 7060: ffffffc83d8dff60 ffffff8008085d30 0000000000000145 ffffff8008b48cf8 [ 156.895283] 7080: ffffffc83d8dff60 ffffffc83d8dfe40 0000000000000000 0000000000000000 [ 156.903095] 70a0: ffffffc83db3b480 0000000000000000 0000000000000000 0000000000000000 [ 156.910907] 70c0: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 [ 156.918719] 70e0: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 [ 156.926531] 7100: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 [ 156.934343] 7120: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 [ 156.942155] 7140: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 [ 156.949966] 7160: 0000000000000000 0000000000000000 [ 156.954821] [] el1_irq+0xa0/0x100 [ 156.959682] [] arch_cpu_idle+0x10/0x18 [ 156.964978] [] cpu_startup_entry+0x144/0x1d8 [ 156.970792] [] secondary_start_kernel+0x170/0x1c8 [ 156.977041] [<000000000008285c>] 0x8285c [ 156.980945] CPU2: stopping [ 156.983639] CPU: 2 PID: 0 Comm: swapper/2 Tainted: G D 4.6.0-dirty #1 [ 156.991195] Hardware name: ZynqMP ZCU102 RevB (DT) [ 156.995961] Call trace: [ 156.998395] [] dump_backtrace+0x0/0x190 [ 157.003777] [] show_stack+0x14/0x20 [ 157.008811] [] dump_stack+0x94/0xb8 [ 157.013845] [] handle_IPI+0x1a4/0x1b8 [ 157.019052] [] gic_handle_irq+0xa0/0xc0 [ 157.024433] Exception stack(0xffffffc83ff73050 to 0xffffffc83ff73170) [ 157.030858] 3040: ffffffc83d8dbe40 ffffffc83d8d8000 [ 157.038677] 3060: ffffffc83d8dbf60 ffffff8008085d30 0000000000000145 ffffff8008b48cf8 [ 157.046489] 3080: ffffffc83d8dbf60 ffffffc83d8dbe40 0000000000000000 0000000000000000 [ 157.054301] 30a0: ffffffc03295ee80 0000000000000000 0000000000000000 0000000000000000 [ 157.062112] 30c0: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 [ 157.069924] 30e0: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 [ 157.077737] 3100: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 [ 157.085548] 3120: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 [ 157.093361] 3140: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 [ 157.101171] 3160: 0000000000000000 0000000000000000 [ 157.106026] [] el1_irq+0xa0/0x100 [ 157.110887] [] arch_cpu_idle+0x10/0x18 [ 157.116183] [] cpu_startup_entry+0x144/0x1d8 [ 157.121998] [] secondary_start_kernel+0x170/0x1c8 [ 157.128246] [<000000000008285c>] 0x8285c [ 157.132152] Kernel Offset: disabled [ 157.135622] Memory Limit: none [ 157.138662] ---[ end Kernel panic - not syncing: Fatal exception in interrupt