Score:0

วิธีทำความเข้าใจความผิดพลาดของเคอร์เนลด้วย vmcore-dmesg.txt และ kexec-dmesg.log

ธง cn

ฉันมีเซิร์ฟเวอร์ที่ใช้ CentOS 8 เคอร์เนลพังสักวันและฉันพบไฟล์สามไฟล์ต่อไปนี้ใน /var/ความผิดพลาด: วีเอ็มคอร์, vmcore-dmesg.txt, และ kexec-dmesg.log.

ฉันมองไปที่แรก vmcore-dmesg.txtซึ่งให้ข้อมูลต่อไปนี้แก่ฉันในตอนท้าย

[291071.552140] {2}[ข้อผิดพลาดของฮาร์ดแวร์]: ข้อผิดพลาดของฮาร์ดแวร์จากแหล่งที่มาของข้อผิดพลาดฮาร์ดแวร์ทั่วไปของ APEI: 1
[291071.552141] {2}[ข้อผิดพลาดของฮาร์ดแวร์]: ความรุนแรงของเหตุการณ์: ร้ายแรง
[291071.552141] {2}[ข้อผิดพลาดของฮาร์ดแวร์]: ข้อผิดพลาด 0 ประเภท: ร้ายแรง
[291071.552142] {2}[ข้อผิดพลาดของฮาร์ดแวร์]: section_type: ข้อผิดพลาด PCIe
[291071.552142] {2}[ข้อผิดพลาดของฮาร์ดแวร์]: port_type: 4, พอร์ตรูท
[291071.552142] {2}[ข้อผิดพลาดของฮาร์ดแวร์]: รุ่น: 3.0
[291071.552143] {2}[ข้อผิดพลาดของฮาร์ดแวร์]: คำสั่ง: 0x0547 สถานะ: 0x4010
[291071.552143] {2}[ข้อผิดพลาดของฮาร์ดแวร์]: device_id: 0000:16:01.0
[291071.552143] {2}[ข้อผิดพลาดของฮาร์ดแวร์]: ช่อง: 82
[291071.552144] {2}[ข้อผิดพลาดของฮาร์ดแวร์]: รอง_บัส: 0x18
[291071.552144] {2}[ข้อผิดพลาดของฮาร์ดแวร์]: vendor_id: 0x8086, device_id: 0x2031
[291071.552145] {2}[ข้อผิดพลาดของฮาร์ดแวร์]: class_code: 000406
[291071.552145] {2}[ข้อผิดพลาดของฮาร์ดแวร์]: สะพาน: สถานะรอง: 0x0000, การควบคุม: 0x0013
[291071.552145] {2}[ข้อผิดพลาดของฮาร์ดแวร์]: aer_uncor_status: 0x00000020, aer_uncor_mask: 0x00100000
[291071.552146] {2}[ข้อผิดพลาดของฮาร์ดแวร์]: aer_uncor_severity: 0x00062030
[291071.552146] {2}[ข้อผิดพลาดของฮาร์ดแวร์]: ส่วนหัว TLP: 00000000 00000000 00000000 00000000
[291071.552146] เคอร์เนลตื่นตระหนก - ไม่ซิงค์: ข้อผิดพลาดร้ายแรงของฮาร์ดแวร์!
[291071.552147] CPU: 0 PID: 0 Comm: swapper/0 Kdump: โหลดแล้ว ไม่เสีย 4.18.0-305.3.1.el8.x86_64 #1
[291071.552147] ชื่อฮาร์ดแวร์: กรอกโดย O.E.M.เติมโดย O.E.M./EPC621D8A, BIOS P2.10 04/03/2019
[291071.552148] การติดตามการโทร:
[291071.552148] <NMI>
[291071.552148] dump_stack+0x5c/0x80
[291071.552149] ตื่นตระหนก+0xe7/0x2a9
[291071.552149] __ghes_panic.cold.32+0x21/0x21
[291071.552149] ghes_notify_nmi+0x273/0x310
[291071.552149] nmi_handle+0x63/0x110
[291071.552150] default_do_nmi+0x49/0x100
[291071.552150] do_nmi+0x17e/0x1e0
[291071.552150] end_repeat_nmi+0x16/0x6f
[291071.552151] RIP: 0010:intel_idle+0x6b/0xb0
[291071.552151] รหัส: 40 5c 01 00 48 89 d1 0f 01 c8 48 8b 00 a8 08 75 19 e9 07 00 00 00 0f 00 2d 1e 01 55 00 c1 ee 18 b9 01 00 00 00 89 f1 ee 18 b9 01 00 00 00 89 f1 56 0 < c 48 8b 04 25 40 5c 01 00 f0 80 60 02 df f0 83 44 24 fc 00 48 8b
[291071.552152] RSP: 0018:ffffffff8fe03e40 EFLAGS: 00000002
[291071.552152] RAX: 0000000000000020 RBX: ffffffff8ff30ba8 RCX: 0000000000000001
[291071.552153] RDX: 0000000000000000 RSI: 0000000000000020 RDI: 0000000000000003
[291071.552153] RBP: ffff9e4a20835ad8 R08: 0000000000000002 R09: 0000000000029700
[291071.552154] R10: 0002cd7f37820a74 R11: ffff9e4a20828be4 R12: ffffffff8ff30a40
[291071.552154] R13: 0000000000000003 R14: 0000000000000003 R15: 0000000000000003
[291071.552154] ? intel_idle+0x6b/0xb0
[291071.552154] ? intel_idle+0x6b/0xb0
[291071.552155] </NMI>
[291071.552155] cpuidle_enter_state+0x87/0x3c0
[291071.552155] cpuidle_enter+0x2c/0x40
[291071.552156] do_idle+0x234/0x260
[291071.552156] cpu_startup_entry+0x6f/0x80
[291071.552156] start_kernel+0x518/0x538
[291071.552157] รอง_startup_64_no_verify+0xc2/0xcb

โดยใช้ lspci, ฉันสามารถหา 0000:16.01.0 เป็น 16:01.0 บริดจ์ PCI: Intel Corporation Sky Lake-E PCI Express Root Port B (rev 02)ซึ่งน่าจะเป็นรูท PCI-E และ

lspci -s 16:01.0 -tvv
0000:16:01.0-[18-1b]----00.0-[19-1b]----03.0-[1a-1b]--+-00.0 Intel Corporation Ethernet Connection X722 สำหรับ 1GbE
                                                      +-00.1 Intel Corporation Ethernet Connection X722 สำหรับ 1GbE
                                                      +-00.2 Intel Corporation Ethernet Connection X722 สำหรับ 1GbE
                                                      \-00.3 Intel Corporation Ethernet Connection X722 สำหรับ 1GbE

จากนั้นฉันก็มองไปที่ kexec-dmesg.log ไฟล์ซึ่งระบุว่า

[พฤ. 10 มิ.ย. 20:02:45 น. 2564] ตัวจัดการหน่วยความจำไม่สะอาดระหว่างการลบออก
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] WARNING: CPU: 0 PID: 399 at drivers/gpu/drm/drm_mm.c:999 drm_mm_takedown+0x1f/0x30 [drm]
[Thu Jun 10 20:02:45 2021] Modules linked in: amdgpu(+) sd_mod t10_pi sg iommu_v2 gpu_sched i2c_algo_bit ttm drm_kms_helper syscopyarea sysfillrect sysimgblt fb_sys_fops crc32c_intel drm ahci libahci uas libata usb_storage dm_mirror dm_region_hash dm_log dm_mod fuse overlay squashfs loop
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] CPU: 0 PID: 399 Comm: systemd-udevd Tainted: G W --------- - - 4.18.0-305.3.1.el8.x86_64 #1
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] ชื่อฮาร์ดแวร์: To Be Filled By O.E.M. เติมโดย O.E.M./EPC621D8A, BIOS P2.10 04/03/2019
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] RIP: 0010:drm_mm_takedown+0x1f/0x30 [drm]
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] รหัส: f6 c3 48 8d 41 c0 eb bb 0f 1f 00 0f 1f 44 00 00 48 8b 47 38 48 83 c7 38 48 39 c7 75 01 c3 48 c7 c7 58 57 1b c0 e8 ดา b6 f6 c0 <0f> 0b c3 66 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 00 0f 1f 44 00 00
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] RSP: 0018:ffffc90000747a10 EFLAGS: 00010282
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] RAX: 0000000000000000 RBX: ffff88805d44caf0 RCX: ffffffff8265f1c8
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] RDX: 0000000000000001 RSI: 0000000000000096 RDI: 0000000000000246
[พฤ. 10 มิ.ย. 20:02:45 น.] RBP: ffff888050e65030 R08: 00000000000005e6 R09: 0000000000aaaaaa
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] R10: 0000000000000000 R11: ffffc900009e0320 R12: ffff88805d44ca00
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] R13: ffff888050e64f68 R14: 0000000000000000 R15: 0000000000000000
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] FS: 00007f16a3901180(0000) GS:ffff88805ea00000(0000) knlGS:0000000000000000
[พฤ. 10 มิ.ย. 20:02:45 น.] CS:0010 DS:0000 ES:0000 CR0:0000000080050033
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] CR2: 0000564d0235b008 CR3: 000000005d5b6002 CR4: 00000000007706b0
[พฤ. 10 มิ.ย. 20:02:45 น.] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[พฤ. 10 มิ.ย. 20:02:45 น.] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
[พฤ. 10 มิ.ย. 20:02:45 น.] PKRU: 55555554
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] Call Trace:
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] amdgpu_gtt_mgr_fini+0x2d/0x80 [amdgpu]
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] ttm_bo_clean_mm+0xa8/0xc0 [ttm]
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] amdgpu_ttm_fini+0x98/0xe0 [amdgpu]
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] amdgpu_bo_fini+0xe/0x30 [amdgpu]
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] gmc_v9_0_sw_fini+0x59/0xa0 [amdgpu]
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] amdgpu_device_fini+0x297/0x4af [amdgpu]
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] amdgpu_driver_unload_kms+0x3e/0x70 [amdgpu]
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] amdgpu_driver_load_kms+0x122/0x2a0 [amdgpu]
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] amdgpu_pci_probe+0xd1/0x150 [amdgpu]
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] local_pci_probe+0x41/0x90
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] pci_device_probe+0x105/0x1c0
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] really_probe+0x255/0x4a0
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] driver_probe_device+0x49/0xc0
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] device_driver_attach+0x50/0x60
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] __driver_attach+0x61/0x130
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] ? device_driver_attach+0x60/0x60
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] bus_for_each_dev+0x77/0xc0
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] ? klist_add_tail+0x3b/0x70
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] bus_add_driver+0x14d/0x1e0
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] ? 0xffffffffc07d3000
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] driver_register+0x6b/0xb0
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] ? 0xffffffffc07d3000
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] do_one_initcall+0x46/0x1c3
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] ? do_init_module+0x22/0x220
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] ? kmem_cache_alloc_trace+0x131/0x270
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] do_init_module+0x5a/0x220
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] load_module+0x14c5/0x17f0
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] ? __switch_to_asm+0x35/0x70
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] ? __switch_to_asm+0x41/0x70
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] ? __switch_to_asm+0x35/0x70
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] ? __switch_to_asm+0x41/0x70
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] ? apic_timer_interrupt+0xa/0x20
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] ? __do_sys_init_module+0x13b/0x180
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] __do_sys_init_module+0x13b/0x180
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] do_syscall_64+0x5b/0x1a0
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] entry_SYSCALL_64_after_hwframe+0x65/0xca
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] RIP: 0033:0x7f16a24df80e
[พฤ. 10 มิ.ย. 20:02:45 น.] รหัส: 48 8b 0d 7d 16 2c 00 f7 d8 64 89 01 48 83 c8 ff c3 66 2e 0f 1f 84 00 00 00 00 00 90 f3 0f 1e fa 49 89 ca b8 af 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d 4a 16 2c 00 f7 d8 64 89 01 48
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] RSP: 002b:00007ffc5a383dd8 EFLAGS: 00000246 ORIG_RAX: 00000000000000af
[พฤ. 10 มิ.ย. 2021 20:02:45 น.] RAX: ffffffffffffffda RBX: 0000558aa33c7ee0 RCX: 00007f16a24df80e
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] RDX: 0000558aa33c85e0 RSI: 00000000009621ec RDI: 0000558aa3def1a0
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] RBP: 0000558aa33c85e0 R08: 0000558aa33c301a R09: 0000000000000003
[พฤ. 10 มิ.ย. 20:02:45 น. 2564] R10: 0000558aa33c3010 R11: 0000000000000246 R12: 0000558aa3def1a0
[พฤ. 10 มิ.ย. 20:02:45 น.] R13: 0000558aa33dabf0 R14: 0000000000020000 R15: 0000000000000000
[พฤ. 10 มิ.ย. 20:02:45 น.] ---[ สิ้นสุดการติดตาม 0950097d77ca3e03 ]---

ซึ่งดูเหมือนว่าฉันจะเกี่ยวข้องกับไดรเวอร์ GPU

ตามความเข้าใจของฉัน เมื่อเคอร์เนลขัดข้อง ทิ้ง พยายามบูตเคอร์เนลอื่นโดยใช้ เค็ก เพื่อทิ้งเคอร์เนลที่เสียหาย จากนั้นบันทึกสำหรับฉันดูเหมือนว่าข้อผิดพลาดของฮาร์ดแวร์ PCI-E บางอย่างเกิดขึ้นทำให้เคอร์เนลหลักพังและเมื่อ ทิ้ง เคอร์เนลเริ่มทำงาน มันล้มเหลวอีกครั้งเนื่องจากข้อผิดพลาดของไดรเวอร์ GPU ฉันเข้าใจถูกต้องหรือไม่ หรือบันทึกที่แสดงไว้ใน kexec-dmesg.log เป็นการติดตามสแต็กของเคอร์เนลหลักหรือไม่

คำถามที่สองของฉันคือจะเข้าใจข้อความแสดงข้อผิดพลาดเหล่านี้ได้อย่างไร เนื่องจากดูเหมือนว่ามีเพียง NIC เท่านั้นที่เชื่อมต่อกับรูท PCI-E มีอะไรผิดปกติกับเมนบอร์ด/CPU ของฉัน หรือปัญหาน่าจะอยู่ที่เคอร์เนลหรือไม่

ข้อมูลด้านที่ฉันพบใน /var/log ข้อผิดพลาดต่อไปนี้มักจะเกิดขึ้นซึ่งไม่ได้ทำให้เคอร์เนลเสียหาย

7 มิ.ย. 11:12:20 เคอร์เนล localhost: {1}[Hardware Error]: Hardware error from APEI Generic Hardware Error Source: 0
7 มิถุนายน 11:12:20 เคอร์เนล localhost: {1}[ข้อผิดพลาดของฮาร์ดแวร์]: ได้รับการแก้ไขโดย h/w และไม่ต้องดำเนินการใดๆ เพิ่มเติม
7 มิถุนายน 11:12:20 เคอร์เนล localhost: {1}[ข้อผิดพลาดของฮาร์ดแวร์]: ความรุนแรงของเหตุการณ์: แก้ไขแล้ว
7 มิถุนายน 11:12:20 เคอร์เนล localhost: {1}[ข้อผิดพลาดของฮาร์ดแวร์]: ข้อผิดพลาด 0, ประเภท: แก้ไขแล้ว
7 มิถุนายน 11:12:20 เคอร์เนล localhost: {1}[ข้อผิดพลาดของฮาร์ดแวร์]: section_type: ข้อผิดพลาด PCIe
7 มิ.ย. 11:12:20 เคอร์เนล localhost: {1}[ข้อผิดพลาดของฮาร์ดแวร์]: port_type: 5, พอร์ตสวิตช์อัปสตรีม
7 มิถุนายน 11:12:20 เคอร์เนล localhost: {1}[ข้อผิดพลาดของฮาร์ดแวร์]: รุ่น: 3.0
7 มิถุนายน 11:12:20 เคอร์เนล localhost: {1}[ข้อผิดพลาดของฮาร์ดแวร์]: คำสั่ง: 0x0147 สถานะ: 0x0010
7 มิถุนายน 11:12:20 เคอร์เนล localhost: {1}[ข้อผิดพลาดของฮาร์ดแวร์]: device_id: 0000:18:00.0
7 มิถุนายน 11:12:20 เคอร์เนล localhost: {1}[ข้อผิดพลาดของฮาร์ดแวร์]: ช่อง: 82
7 มิถุนายน 11:12:20 เคอร์เนล localhost: {1}[ข้อผิดพลาดของฮาร์ดแวร์]: รอง _ บัส: 0x19
7 มิถุนายน 11:12:20 เคอร์เนล localhost: {1}[ข้อผิดพลาดของฮาร์ดแวร์]: vendor_id: 0x8086, device_id: 0x37c0
7 มิถุนายน 11:12:20 เคอร์เนล localhost: {1}[ข้อผิดพลาดของฮาร์ดแวร์]: class_code: 000406
7 มิ.ย. 11:12:20 เคอร์เนล localhost: {1}[ข้อผิดพลาดของฮาร์ดแวร์]: สะพาน: รอง_สถานะ: 0x2000 ควบคุม: 0x0013
7 มิถุนายน 11:12:20 เคอร์เนล localhost: pcieport 0000:18:00.0: aer_status: 0x00003000, aer_mask: 0x00002000
7 มิ.ย. 11:12:20 เคอร์เนล localhost: pcieport 0000:18:00.0: [12] หมดเวลา               
7 มิถุนายน 11:12:20 เคอร์เนล localhost: pcieport 0000:18:00.0: aer_layer=Data Link Layer, aer_agent=Transmitter ID

ที่ไหน 18:00.0 เป็นสะพาน PCI 18:00.0 บริดจ์ PCI: Intel Corporation Device 37c0 (rev 09) และ

 lspci -s 18:00.0 -tvv
0000:18:00.0-[19-1b]----03.0-[1a-1b]--+-00.0 Intel Corporation Ethernet Connection X722 สำหรับ 1GbE
                                      +-00.1 Intel Corporation Ethernet Connection X722 สำหรับ 1GbE
                                      +-00.2 Intel Corporation Ethernet Connection X722 สำหรับ 1GbE
                                      \-00.3 Intel Corporation Ethernet Connection X722 สำหรับ 1GbE

ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชมอย่างมาก

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา