在 arch linux 下,关机似乎冻结了我在 dell latitude e7470 上的 cpu

在 arch linux 下,关机似乎冻结了我在 dell latitude e7470 上的 cpu

我最近买了一台戴尔 Latitude e7470。我立即删除了预装的Windows 10,并安装了Arch Linux。

它工作正常,除了一件事:关机或重新启动时,在电脑通常关闭的时候(所有进程结束等),笔记本电脑只会挂起大约 30-60 秒。当它挂起时,电池指示灯会以一种模式闪烁,根据戴尔的用户手册,这表示“CPU故障”。 30-60 秒后,风扇旋转到最大转速,然后系统崩溃(只是关闭,直到我再次按下电源按钮才重新启动)。

我怀疑Linux内核以某种方式向CPU发出了错误的关闭命令,但我对如何解决这个问题知之甚少。有人可以给我任何关于这方面的提示吗? CPU是i-5 6300。

journalctl -p err

给我

-- Reboot --
Jan 07 21:11:13 gaspodelaptop systemd-udevd[207]: Error calling EVIOCSKEYCODE on device node '/dev/input/event9' (scan code 0x150, key code 190): Invalid argument
Jan 07 21:11:13 gaspodelaptop kernel: dell_laptop: Setting old previous keyboard state failed
Jan 07 21:11:14 gaspodelaptop kernel: Bluetooth: hci0: Setting Intel event mask failed (-16)
Jan 08 01:49:19 gaspodelaptop gnome-session-binary[569]: GLib-GObject-CRITICAL: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
Jan 08 01:49:19 gaspodelaptop gnome-session-binary[569]: GLib-GObject-CRITICAL: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
Jan 08 01:49:19 gaspodelaptop gnome-session-binary[569]: GLib-GObject-CRITICAL: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
Jan 08 01:49:19 gaspodelaptop gnome-session-binary[569]: GLib-GObject-CRITICAL: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
Jan 08 01:49:19 gaspodelaptop gnome-session-binary[569]: GLib-GObject-CRITICAL: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
Jan 08 01:49:20 gaspodelaptop gnome-session-binary[569]: GLib-GObject-CRITICAL: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
Jan 08 01:49:20 gaspodelaptop gnome-session-binary[569]: GLib-GObject-CRITICAL: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
Jan 08 01:49:20 gaspodelaptop gnome-session-binary[569]: GLib-GObject-CRITICAL: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
Jan 08 01:49:20 gaspodelaptop gnome-session-binary[569]: GLib-GObject-CRITICAL: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
Jan 08 01:49:20 gaspodelaptop gnome-session-binary[569]: GLib-GObject-CRITICAL: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
Jan 08 01:49:22 gaspodelaptop gdm[357]: GLib: g_hash_table_find: assertion 'version == hash_table->version' failed
-- Reboot --

输出dmesg | grep microcode

[    0.878621] microcode: sig=0x406e3, pf=0x80, revision=0x9e
[    0.878759] microcode: Microcode Update Driver: v2.01 <[email protected]>, Peter Oruba

更新:这似乎是一个内核问题。在调查了我对 SSD 的怀疑后,我偶然发现论坛帖子。其中提到这是一个已经修复的内核错误。根据这个错误报告,它将在内核 4.9-rc7 中修复。我想我得等一段时间,但由于我使用的是 Arch Linux,所以应该不会花太长时间。我知道我也可以编译自己的内核,但我太懒了(或者更好:太忙于其他事情)。我想我会经常使用待机状态。

答案1

安装intel-ucode包!

处理器制造商发布了处理器微代码的稳定性和安全更新。虽然微代码可以通过 BIOS 进行更新,但 Linux 内核也能够在引导期间应用这些更新。这些更新提供了对系统稳定性至关重要的错误修复。如果没有这些更新,您可能会遇到难以追踪的虚假崩溃或意外的系统停止。尤其是属于 Intel Haswell 和 Broadwell 处理器系列的 CPU 的用户必须安装这些微代码更新,以确保系统稳定性。但所有英特尔用户都应该理所当然地安装更新。

https://wiki.archlinux.org/index.php/Microcode

相关内容