在过去的几个月里,我的 Linux 安装每隔几个小时左右就会发生一次内核恐慌。当时这并没有让我感到太困扰,因为我的 Windows 位于另一个驱动器上,由于 Linux 上不断崩溃,我最终使用了 24/7 的驱动器。
Arch Linux 刚开始时我使用的是它,大约是内核版本 5.11 到 5.12,我不太记得了。令人沮丧的几周后,我转向 Gentoo Linux,但情况变得更糟,内核恐慌更加频繁。几个月后我切换回 Arch Linux,它仍然出现内核恐慌,但不那么频繁了。
我没有第一次安装 Arch 的系统日志,但我记得这主要是由 Firefox 或 Discord 引起的。我确实有一些来自 Gentoo 的日志,据我所知,这通常是 Discord 崩溃、段错误和内核 NULL 指针取消引用。在我当前的 Arch 安装中,Firefox 上有很多核心被转储,并且我无法理解内核崩溃。
我在 5.10 之前从未遇到过任何崩溃,我不知道是否 Firefox、discord 或内核中发生了某些变化导致了这些崩溃,或者我的硬件是否有故障,我对此表示怀疑,因为 Windows 一直工作得很好。我总是在 Gentoo 和 Arch 上使用最新的、最前沿的内核。我在 Gentoo 上尝试过一次 Zen 内核,但得到了相同的结果。 Firefox 上是否有某种设置可以解决此问题,或者我应该尝试使用 AUR 中的不同内核,例如 linux-hardened、linux-lts 或 linux-zen?
编辑:当我打字时,一切都变得疯狂。据我所知,这是一个每隔 0.001 秒发送一次的垃圾邮件错误,创建了一个大约 1.6 GB 的日志文件。什么?
Jun 27 23:46:02 archlinux kernel: ------------[ cut here ]------------
Jun 27 23:46:02 archlinux kernel: list_add corruption. next->prev should be prev (ffff9c51dea737a8), but was ffff9c4f09ab80a8. (next=ffff9c51dea737a8).
Jun 27 23:46:02 archlinux kernel: WARNING: CPU: 9 PID: 0 at lib/list_debug.c:23 __list_add_valid+0x38/0x70
Jun 27 23:46:02 archlinux kernel: Modules linked in: cfg80211 8021q garp mrp stp llc nvidia_drm(POE) nvidia_uvm(POE) nvidia_modeset(POE) nvidia(POE) intel_rapl_msr intel_rapl_common eeepc_wmi asus_wmi ucsi_ccg snd_hda_codec_realtek sparse_keymap snd_hda_codec_generic typec_ucsi uvcvideo edac_mce_amd ledtrig_audio snd_hda_codec_hdmi platform_profile typec rfkill videobuf2_vmalloc kvm_amd snd_hda_intel roles video wmi_bmof mxm_wmi videobuf2_memops asus_wmi_sensors snd_intel_dspcfg videobuf2_v4l2 kvm snd_usb_audio snd_intel_sdw_acpi snd_hda_codec snd_usbmidi_lib irqbypass snd_hda_core snd_rawmidi videobuf2_common rapl snd_hwdep snd_seq_device videodev snd_pcm joydev mousedev snd_timer mc sp5100_tco pcspkr igb snd soundcore gpio_amdpt k10temp mac_hid i2c_piix4 gpio_generic i2c_nvidia_gpu dca pinctrl_amd wmi acpi_cpufreq fuse bpf_preload ip_tables x_tables ext4 crc32c_generic crc16 mbcache jbd2 dm_crypt cbc encrypted_keys trusted asn1_encoder tee tpm dm_mod usbhid crct10dif_pclmul crc32_pclmul crc32c_intel
Jun 27 23:46:02 archlinux kernel: ghash_clmulni_intel aesni_intel crypto_simd nvme ccp cryptd nvme_core xhci_pci rng_core xhci_pci_renesas
Jun 27 23:46:02 archlinux kernel: CPU: 9 PID: 0 Comm: swapper/9 Tainted: P W OE 5.18.6-arch1-1 #1 c9877892a63ec275868771a7abba7cb50c474f8e
Jun 27 23:46:02 archlinux kernel: Hardware name: System manufacturer System Product Name/ROG STRIX X470-F GAMING, BIOS 5809 12/03/2020
Jun 27 23:46:02 archlinux kernel: RIP: 0010:__list_add_valid+0x38/0x70
Jun 27 23:46:02 archlinux kernel: Code: 75 19 4c 8b 02 49 39 c0 75 26 48 39 fa 74 3a 49 39 f8 74 35 b8 01 00 00 00 c3 cc 48 89 c1 48 c7 c7 38 ba f1 ad e8 64 3b 60 00 <0f> 0b 31 c0 c3 cc 48 89 d1 48 89 c6 4c 89 c2 48 c7 c7 88 ba f1 ad
Jun 27 23:46:02 archlinux kernel: RSP: 0018:ffffc1e3801b7e40 EFLAGS: 00010082
Jun 27 23:46:02 archlinux kernel: RAX: 0000000000000000 RBX: ffff9c4ef69d00a8 RCX: 0000000000000027
Jun 27 23:46:02 archlinux kernel: RDX: ffff9c51dea616a8 RSI: 0000000000000001 RDI: ffff9c51dea616a0
Jun 27 23:46:02 archlinux kernel: RBP: ffff9c51dea72cc0 R08: 0000000000000000 R09: ffffc1e3801b7c50
Jun 27 23:46:02 archlinux kernel: R10: 0000000000000003 R11: ffff9c51ef32bc28 R12: ffff9c51dea737a8
Jun 27 23:46:02 archlinux kernel: R13: ffff9c51dea737a8 R14: 0000000000000000 R15: ffff9c4ef69d0000
Jun 27 23:46:02 archlinux kernel: FS: 0000000000000000(0000) GS:ffff9c51dea40000(0000) knlGS:0000000000000000
Jun 27 23:46:02 archlinux kernel: CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
Jun 27 23:46:02 archlinux kernel: CR2: 00007efca6ae3000 CR3: 0000000133d0c000 CR4: 0000000000350ee0
Jun 27 23:46:02 archlinux kernel: Call Trace:
Jun 27 23:46:02 archlinux kernel: <TASK>
Jun 27 23:46:02 archlinux kernel: pick_next_task_fair+0x177/0x3d0
Jun 27 23:46:02 archlinux kernel: __schedule+0x17f/0x11f0
Jun 27 23:46:02 archlinux kernel: ? recalibrate_cpu_khz+0x10/0x10
Jun 27 23:46:02 archlinux kernel: ? tick_nohz_idle_exit+0xe1/0x130
Jun 27 23:46:02 archlinux kernel: schedule_idle+0x2a/0x40
Jun 27 23:46:02 archlinux kernel: cpu_startup_entry+0x1d/0x20
Jun 27 23:46:02 archlinux kernel: start_secondary+0x11c/0x140
Jun 27 23:46:02 archlinux kernel: secondary_startup_64_no_verify+0xd5/0xdb
Jun 27 23:46:02 archlinux kernel: </TASK>
Jun 27 23:46:02 archlinux kernel: ---[ end trace 0000000000000000 ]---
这些崩溃中最糟糕的是我什至无法通过按住电源按钮来关闭我的电脑。就像整个系统在硬件层面上完全冻结一样。我确实需要关闭电源才能将其关闭。
硬件:Ryzen 5 3600X、16GB RAM、GTX 1660 Ti、适用于 Linux 的 M.2 SSD、适用于 Windows 的硬盘。
其他系统日志:
在一切再次崩溃之前,我会将整个日志转储到谷歌驱动器中。
拱门日志:https://drive.google.com/file/d/1jpF9qr8cmp6dL1zW3pedfpdfWqV6nUxu/view?usp=sharing
gentoo 日志:https://drive.google.com/file/d/1fwC5rk_WMt9shWpGsLP8yMDLHQEhTVAO/view?usp=sharing
答案1
更新 BIOS 有很大帮助。