I am running linux 3.0.35 on a custom imx6 board. On some boards after a day of running fine, the kernel crashes. It seems to happen only if I enable a wifi module (realtek 8192cu).
There are other instances of the same board running fine with the wifi module.
Here is the crash log on the console. The stack info seems to indicate an issue with memory.
Any one has any thoughts on why this might be happening?
Unable to handle kernel NULL pointer dereference at virtual address 00000003
pgd = ba4c4000
[00000003] *pgd=4fdc3831, *pte=00000000, *ppte=00000000
Internal error: Oops: 817 [#4] PREEMPT SMP
Modules linked in: 8192cu ftdi_sio
CPU: 2 Tainted: G D (3.0.35-1.0.0 #1)
PC is at get_page_from_freelist+0x148/0x5c0
LR is at zone_watermark_ok+0x20/0x28
pc : [<800b4978>] lr : [<800b31c4>] psr: 600f0093
sp : bfb05d98 ip : 00000000 fp : 00000001
r10: 00000000 r9 : 805f3c00 r8 : bfb04000
r7 : 0bfe7000 r6 : 805f3c00 r5 : 8bff4570 r4 : 80035150
r3 : 00200200 r2 : 00100100 r1 : 8c01c15c r0 : ffffffff
Flags: nZCv IRQs off FIQs on Mode SVC_32 ISA ARM Segment user
Control: 10c53c7d Table: 4a4c404a DAC: 00000015
Process deckard (pid: 1567, stack limit = 0xbfb042f0)
Stack: (0xbfb05d98 to 0xbfb06000)
5d80: 00000041 00000001
5da0: bffd1700 ffffffff 600f0013 8c01c15c 00000000 805bdcc8 00020200 00000000
5dc0: 00000020 805f46e4 bfb05e44 00000000 00000000 00000000 00000000 bfb05e80
5de0: bfb04000 bfb04000 00000001 ffffffff 805fc438 805f3c00 0000010d 805f46e0
5e00: 00000000 805f3c00 00000001 00000000 805bdb40 805f46e4 00000200 800b549c
5e20: 00000001 00000041 805f3c00 00000000 bfb05e44 00000000 00000000 00020200
5e40: 00000001 805fc438 00000000 bffbfa00 bffd1780 00000010 00000000 00000002
5e60: 00000000 00000000 00000000 00000000 00000800 00000000 8c018ee0 bffbfa00
5e80: 00000064 805f3c00 bfb05e84 bfb05e8c 3496ca18 00000001 00000001 00000000
5ea0: bfb4fba0 bfb05ef8 37724000 ba583478 00000000 37726000 37726000 800b5aec
5ec0: 00000008 800c91fc 00000001 00000001 00000000 00000000 bfb4fba0 00000000
5ee0: 00000000 80031ee0 bffbd220 00000000 00000008 bfb05ef8 bfb05fac 8043a2f4
5f00: 37724000 00002000 bfb4fbdc 8043c2b0 805bdcc8 805aa040 37724000 ba583478
5f20: 37726000 00000000 00000004 bfb04000 bfb04000 800c6b74 001a08a8 00000001
5f40: 00000000 00000081 001a08a8 00000001 001a09c4 80095ef8 3496ca18 00000000
5f60: 00000000 00000000 ba583478 bfb04000 805bdcc8 80031c00 00000102 bfb04000
5f80: 805bdcc8 37703020 37700000 00022fe0 000000dc 80039284 bfb04000 00000000
5fa0: 00024000 80039100 37703020 37700000 37724000 00002000 00000004 00000000
5fc0: 37703020 37700000 00022fe0 000000dc 2de00010 00002000 2de00010 00024000
5fe0: 00001000 3496c96c 4ab99cec 4abf380c 600f0010 37724000 00000000 00000000
[<800b4978>] (get_page_from_freelist+0x148/0x5c0) from [<800b549c>] (__alloc_pages_nodemask+0xe8/0x728)
[<800b549c>] (__alloc_pages_nodemask+0xe8/0x728) from [<800b5aec>] (__get_free_pages+0x10/0x24)
[<800b5aec>] (__get_free_pages+0x10/0x24) from [<800c91fc>] (zap_page_range+0x54/0x14c)
[<800c91fc>] (zap_page_range+0x54/0x14c) from [<800c6b74>] (sys_madvise+0x394/0x578)
[<800c6b74>] (sys_madvise+0x394/0x578) from [<80039100>] (ret_fast_syscall+0x0/0x30)
Code: e5950018 e3402010 e3a03c02 e3403020 (e5801004)
---[ end trace 72bc50fe04348d0b ]---
Hi Siva
wifi module may consume much current and introduce
additional board noise which affects memory. One can try to
increase wifi power supply current capability, add filtering capacitors,
inprove wifi module shielding. For testing one can decrease board operating
frequency (this will decrease board noise) and slightly increase power supply
voltage of ddr memory. Ferrite beads may be recommended on wifi module
power cables for decreaseing emi.
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------