Reason for kernel panic? Unable to handle kernel paging request at virtual address ebfeb0a0

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Reason for kernel panic? Unable to handle kernel paging request at virtual address ebfeb0a0

7,010 Views
peteramond
Contributor V

This is regarding imx6q, 2GB Alliance Memory (4Gb x 4, 4 RAM chips) custom hardware design which is most similar to nitrogen6_max. This hardware was stable and could run Yocto without any failures.

 

But now it is unstable and get kernel panics randomly. Here I have attached kernel log. Is this a memory problem ? When I do the program counter decoding using addr2line it shows >>Prepare_to wait_event, netlink_compare_arg_init << in different occasions. Any idea of this ?

 

Kernel Log

Unable to handle kernel paging request at virtual address ebfeb0a0
pgd = b3fd4fff
[ebfeb0a0] *pgd=187e2722(bad)
Internal error: Oops: 80000005 [#1] PREEMPT SMP ARM
Modules linked in: brcmfmac brcmutil cfg80211 usb_f_ecm g_ether usb_f_rndis libcomposite u_ether videobuf2_dma_sg ov5642_camera ov5640_camera_mipi_int mxc_v4l2_capture ipu_bg_overlay_sdc atmel_mxt_ts ipu_still ipu_prp_enc ipu_csi_enc tc358743_h2c_bridge ov5640_subdev_camera goodix ipu_fg_overlay_sdc tsc2004 ili210x ft5x06_ts egalax_ts v4l2_int_device tw6869 videobuf2_dma_contig videobuf2_memops gpio_keys galcore(O)
CPU: 1 PID: 104 Comm: cryptomgr_test Tainted: G O 4.1.15-1.0.0_ga+yocto+g76c24a0 #8
Hardware name: Freescale i.MX6 Quad/DualLite (Device Tree)
task: ce564600 ti: fedf4000 task.ti: ce5be000
PC is at 0xebfeb0a0
LR is at printk+0x90/0xac
pc : [<ebfeb0a0>] lr : [<8085a290>] psr: 20030193
sp : fedf6170 ip : fedf6170 fp : fedf6194
r10: 00000001 r9 : fedf62c0 r8 : ebfeb0a0
r7 : a9277bff r6 : 80a8c8f8 r5 : 80d02508 r4 : ebfeb0a0
r3 : fedf6000 r2 : 5aede52e r1 : fedf619c r0 : 80a8c8f8
Flags: nzCv IRQs off FIQs on Mode SVC_32 ISA ARM Segment user
Control: 10c5387d Table: 5e7cc04a DAC: 00000015
Process cryptomgr_test (pid: 104, stack limit = 0xce5be210)
Stack: (0xfedf6170 to 0xce5c0000)
Backtrace: invalid frame pointer 0xfedf6194
Code: bad PC value
---[ end trace 2854d5881dd1d8c6 ]---
Fixing recursive fault but reboot is needed!
INFO: rcu_preempt detected stalls on CPUs/tasks:
3: (6 GPs behind) idle=c63/140000000000000/0 softirq=12514/12514 fqs=1387
(detected by 1, t=2102 jiffies, g=9717, c=9716, q=38)
Task dump for CPU 3:
swapper/3 R running 0 0 1 0x00000002
Backtrace:
[<8085c670>] (__schedule) from [<8085cbc4>] (schedule+0x44/0x9c)
r9:ce0a9fa8 r8:00000001 r7:d0f23ed0 r6:809028c0 r5:80d025e8 r4:ce0a8000
[<8085cb80>] (schedule) from [<8085cfa8>] (schedule_preempt_disabled+0x18/0x24)
r5:80d025e8 r4:ce0a8000
[<8085cf90>] (schedule_preempt_disabled) from [<801681ac>] (cpu_startup_entry+0x134/0x330)
[<80168078>] (cpu_startup_entry) from [<8010e348>] (secondary_start_kernel+0x150/0x15c)
r7:80d51308
[<8010e1f8>] (secondary_start_kernel) from [<1010154c>] (0x1010154c)
r5:00000015 r4:5e08806a
Unable to handle kernel paging request at virtual address ebfeb0a0
pgd = b3fd4fff
[ebfeb0a0] *pgd=187e2722(bad)
Internal error: Oops: 80000005 [#1] PREEMPT SMP ARM
Modules linked in: brcmfmac brcmutil cfg80211 usb_f_ecm g_ether usb_f_rndis libcomposite u_ether videobuf2_dma_sg ov5642_camera ov5640_camera_mipi_int mxc_v4l2_capture ipu_bg_overlay_sdc atmel_mxt_ts ipu_still ipu_prp_enc ipu_csi_enc tc358743_h2c_bridge ov5640_subdev_camera goodix ipu_fg_overlay_sdc tsc2004 ili210x ft5x06_ts egalax_ts v4l2_int_device tw6869 videobuf2_dma_contig videobuf2_memops gpio_keys galcore(O)
CPU: 1 PID: 104 Comm: cryptomgr_test Tainted: G O 4.1.15-1.0.0_ga+yocto+g76c24a0 #8
Hardware name: Freescale i.MX6 Quad/DualLite (Device Tree)
task: ce564600 ti: fedf4000 task.ti: ce5be000
PC is at 0xebfeb0a0
LR is at printk+0x90/0xac
pc : [<ebfeb0a0>] lr : [<8085a290>] psr: 20030193
sp : fedf6170 ip : fedf6170 fp : fedf6194
r10: 00000001 r9 : fedf62c0 r8 : ebfeb0a0
r7 : a9277bff r6 : 80a8c8f8 r5 : 80d02508 r4 : ebfeb0a0
r3 : fedf6000 r2 : 5aede52e r1 : fedf619c r0 : 80a8c8f8
Flags: nzCv IRQs off FIQs on Mode SVC_32 ISA ARM Segment user
Control: 10c5387d Table: 5e7cc04a DAC: 00000015
Process cryptomgr_test (pid: 104, stack limit = 0xce5be210)
Stack: (0xfedf6170 to 0xce5c0000)
Backtrace: invalid frame pointer 0xfedf6194
Code: bad PC value
---[ end trace 2854d5881dd1d8c6 ]---
Fixing recursive fault but reboot is needed!
INFO: rcu_preempt detected stalls on CPUs/tasks:
3: (6 GPs behind) idle=c63/140000000000000/0 softirq=12514/12514 fqs=1387
(detected by 1, t=2102 jiffies, g=9717, c=9716, q=38)
Task dump for CPU 3:
swapper/3 R running 0 0 1 0x00000002
Backtrace:
[<8085c670>] (__schedule) from [<8085cbc4>] (schedule+0x44/0x9c)
r9:ce0a9fa8 r8:00000001 r7:d0f23ed0 r6:809028c0 r5:80d025e8 r4:ce0a8000
[<8085cb80>] (schedule) from [<8085cfa8>] (schedule_preempt_disabled+0x18/0x24)
r5:80d025e8 r4:ce0a8000
[<8085cf90>] (schedule_preempt_disabled) from [<801681ac>] (cpu_startup_entry+0x134/0x330)
[<80168078>] (cpu_startup_entry) from [<8010e348>] (secondary_start_kernel+0x150/0x15c)
r7:80d51308
[<8010e1f8>] (secondary_start_kernel) from [<1010154c>] (0x1010154c)
r5:00000015 r4:5e08806a

Regards,

Kulunu.

Labels (3)
3 Replies

3,714 Views
Yuri
NXP Employee
NXP Employee

Hello,

   Please try the DDR Stress Test : perhaps memory re-calibration is needed.

https://community.nxp.com/docs/DOC-105652 

Have a great day,
Yuri

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

3,714 Views
peteramond
Contributor V

Hi #Yuri Muhin

Thanks for your response.

 

Well I have done memory calibration for many times till I get the stable values. And yes I can do it again and again to get more confirmation. 

1) But don't we have any other way to get the exact reason for this by decoding log files ?

2) As well as I could identify that this panic start when the system heating up. When the imx6q processor junction temperature reach to 58C-61C range it happened. But if I can control the temperature within 50-55 range using a fan the system was stabled in long time. Any idea for this ?

 

Regards,

Kulunu

0 Kudos

3,714 Views
Yuri
NXP Employee
NXP Employee

Hello,

  You may try using temperature driver in Linux in order to decrease system

frequencies under heavy load. Please look at section 2.7 (Thermal) of
"i.MX_Linux_Reference_Manual.pdf".

http://www.nxp.com/webapp/Download?colCode=L4.1.15_2.1.0_LINUX_DOCS&Parent_nodeId=133769948107170617... 

As for Linux debugging You may create request to get some considerations 

about kernel debug under JTAG.
  

Support|NXP 

Regards,

Yuri.