เหตุผลที่ทำให้ตื่นตระหนกเคอร์เนล? ไม่สามารถจัดการคำขอเคอร์เนลเพจที่ที่อยู่เสมือน ebfeb0a0


0

เกี่ยวกับ imx6q, 2GB Alliance Memory (4Gb x 4, 4 RAM chips) การออกแบบฮาร์ดแวร์ที่กำหนดเองซึ่งคล้ายกับ nitrogen6_max มากที่สุด ฮาร์ดแวร์นี้มีความเสถียรและสามารถใช้ Yocto ได้โดยไม่มีข้อผิดพลาด

แต่ตอนนี้มันไม่เสถียรและรับความตื่นตระหนกของเคอร์เนลแบบสุ่ม ที่นี่ฉันได้แนบบันทึกเคอร์เนล นี่เป็นปัญหาหน่วยความจำหรือไม่? เมื่อฉันถอดรหัสตัวนับโปรแกรมโดยใช้ addr2line มันจะแสดง >> Prepare_to wait_event, netlink_compare_arg_init << ในโอกาสที่แตกต่างกัน มีความคิดเกี่ยวกับเรื่องนี้ไหม?

บันทึกเคอร์เนล

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

ขอแสดงความนับถือ Kulunu


2
คำแนะนำสำหรับคุณในเว็บไซต์อื่นคือการโพสต์ฮาร์ดแวร์และซอฟต์แวร์สแต็ค ระบบซอฟต์แวร์และสิ่งที่คุณพยายามในเวลานั้น?
Solar Mike

1
ดูเหมือนว่าบั๊กในเคอร์เนลอาจเป็นเพราะมันไม่สามารถจัดการกับฮาร์ดแวร์ของคุณได้ คุณเปลี่ยนอะไร ไดรเวอร์ใหม่หรือไม่? คุณสามารถกลับไปที่สถานะที่มั่นคงหรือไม่?
dirkt

สวัสดี Kulunu เป็น @SolarMike อธิบายนี้ไม่ได้ใด ๆ ที่ชัดเจนกว่าคำถามเหมือนที่คุณเคยถาม EE.SE โปรดสละเวลาตรวจสอบสิ่งที่อาจผิดเขียนคำอธิบายที่ดีขึ้นและแก้ไขคำถามของคุณ ในขณะนี้ฉันคิดว่าสิ่งนี้ควรถูกปิดอย่างไม่ชัดเจน
Marcus Müller
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.