Ved*_*ant 12 xorg suspend swap ram 18.04
笔记本电脑处于睡眠模式几个小时后,当我尝试恢复会话时,出现以下错误:
交换设备上的读取错误
登录屏幕需要大约 30 秒才能加载发生这种情况的帖子。登录后,屏幕会一秒钟或两次空白,并且我的任何程序都不再打开。我收到“检测到系统问题”提示。当我点击“发送报告”时,会弹出另一个通知说:
抱歉,程序“Xorg”意外关闭。您的计算机没有足够的可用内存来自动分析问题并向开发人员发送报告。
到目前为止我所尝试的是增加可用的交换空间。最初大约为 2 GB,我创建了另一个 9 GB 的交换文件。这没有帮助。崩溃后占用的交换空间(根据 swapon 命令)始终在 170MB 左右。
当我恢复会话时的 DMESG,直到交换设备上的读取错误如下:
[64046.474054] ACPI:低级恢复完成 [64046.474162] ACPI:EC:EC 启动 [64046.474162] PM:恢复平台 NVS 内存 [64046.475139] 启用非启动 CPU ... [64046.475196] x86:启动 SMP 配置: [64046.475196] smpboot:引导节点 0 处理器 1 APIC 0x2 [64046.475663] 缓存:父 cpu1 不应休眠 [64046.475859] CPU1 已启动 [64046.475910] smpboot:引导节点 0 处理器 2 APIC 0x4 [64046.476330] 缓存:父 cpu2 不应该休眠 [64046.476506] CPU2 已启动 [64046.476539] smpboot:引导节点 0 处理器 3 APIC 0x6 [64046.477071] 缓存:父 cpu3 不应休眠 [64046.477255] CPU3 已启动 [64046.477274] smpboot:引导节点 0 处理器 4 APIC 0x1 [64046.477721] 缓存:父 cpu4 不应休眠 [64046.477922] CPU4 已启动 [64046.477947] smpboot:引导节点 0 处理器 5 APIC 0x3 [64046.478371] 缓存:父 cpu5 不应休眠 [64046.478571] CPU5 已启动 [64046.478591] smpboot:引导节点 0 处理器 6 APIC 0x5 [64046.479018] 缓存:父 cpu6 不应该休眠 [64046.479229] CPU6 已启动 [64046.479247] smpboot:引导节点 0 处理器 7 APIC 0x7 [64046.479675] 缓存:父 cpu7 不应该休眠 [64046.479899] CPU7 已启动 [64046.485913] ACPI:从系统睡眠状态 S3 唤醒 [64046.639206] ACPI:EC:事件未阻止 [64046.639711] sd 2:0:0:0: [sda] 启动盘 [64046.873289] USB 1-11:使用 xhci_hcd 重置全速 USB 设备编号 2 [64046.976869] ata4:SATA 链路断开(SStatus 4 SControl 300) [64046.976892] ata2:SATA 链路断开(SStatus 4 SControl 300) [64047.149289] USB 1-6:使用 xhci_hcd 重置高速 USB 设备编号 40 [64047.437370] psmouse serio1:突触:查询最大坐标:x [..5660],y [..4570] [64047.476302] psmouse serio1:突触:查询的最小坐标:x [1364..],y [1284..] [64047.922603] OOM 杀手已启用。 [64047.922605] 重新启动任务......完成。 [64047.928727]热热区1:未能读取热区(-61) [64047.930036] 蓝牙:hci0:引导加载程序修订版 0.0 构建 2 周 52 2014 [64047.935036] 蓝牙:hci0:设备版本为 5 [64047.935037] 蓝牙:hci0:安全启动已启用 [64047.935038] 蓝牙:hci0:启用 OTP 锁定 [64047.935038]蓝牙:hci0:API锁已启用 [64047.935039]蓝牙:hci0:调试锁被禁用 [64047.935040] 蓝牙:hci0:最低固件版本 1 周 10 2014 [64047.935042]蓝牙:hci0:找到设备固件:intel/ibt-11-5.sfi [64047.944372] PM:暂停退出 [64048.050329] 交换设备上的读取错误 (8:0:1543400288) [64048.460888] [drm] RC6 上
如果需要任何其他信息,请告诉我。
sou*_*edi 10
您当前使用的 Ubuntu 18.04 内核缺少一个相当重要的错误修复。
上游 Linux 内核版本 4.16.8 中已经存在对此的修复。(挂起错误实际上是在内核版本 4.15 中开始发生的)。Ubuntu 只需要从上游挑选这个小补丁。该错误经常导致 Xorg 在挂起后立即崩溃,即它使整个图形登录会话崩溃。
请注意,此错误经常发生而未显示Read-error on swap device. 大多数情况下,内核日志中没有错误。(有几次,它显示EXT4-fs error,Buffer I/O error而不是)。此外,这些错误消息可能是由硬件故障引起的。在诊断此问题时,请关注其他更明显的细节。
在此 Ubuntu 错误的末尾提供了一个测试内核,即在此评论中:https : //bugs.launchpad.net/ubuntu/+source/linux/+bug/1776887/comments/5
到目前为止,没有人报告他们暂停 Ubuntu 测试内核的结果。 可能是如果有人可以报告成功,它会鼓励 Ubuntu 开发人员最终包含错误修复。不过,我可能是错的,我不是 100% 确定是什么阻碍了这一点。
还有一个已知的解决方法。如果将内核命令行配置为包含该选项,则可以避免崩溃scsi_mod.scan=sync。
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1776887
已确认此上游错误会影响 Ubuntu 用户 [1]。根据修复提交(如下),最常见的症状是 Xorg/Xwayland 崩溃,即当笔记本电脑从系统睡眠中唤醒时杀死整个 GUI。该错误的频率被描述为每隔几天一次[2]。
[1] 例如,此用户确认了错误和非常具体的解决方法:https : //bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/1760450/comments/11
[2] 例如这个崩溃日志:https : //bugzilla.redhat.com/show_bug.cgi? id = 1553979# c23
这是 blk-core.c 中的一个错误。它并不特定于任何一种硬件驱动程序。从技术上讲,挂起错误是由所有 SATA 设备使用的 SCSI 核心触发的。
提交还包括一个测试,可以快速可靠地证明存在一个可怕的错误。
我想只有在 NVMe 上有 root 用户才能避免这个错误。避免 Xorg 崩溃的另一种方法是,如果您不使用所有 RAM,则不会有导致 Xorg 冷页面被交换的压力。此外,如果您立即挂起+恢复,您将不会重现 Xorg 崩溃。(这一度让我的测试感到沮丧,它仅在午餐时间让系统暂停后才触发:)。
修复:“阻止:不要在任何地方使用可中断等待”
在内核 4.17 中:https : //github.com/torvalds/linux/commit/1dc3039bc87ae7d19a990c3ee71cfd8a9068f428
在内核 4.16.8 中:https ://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/ ? h = linux-4.16.y & id = 7859056bc73dea2c3714b00c83b253d4c22bf7b
4.15.0-24.26 (ubuntu 18.04) 缺少修复:https ://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/bionic/tree/block/blk-core.c ?id=Ubuntu-4.15.0-24.26#n856
即,此错误仍然存在于 Ubuntu 源包 linux-4.15.0-24.26(和 4.15.0-23.25)中。我附上了已知发生此错误的系统的硬件详细信息 (lspci-vnvn.log)。
问候艾伦
变通方法:使用内核参数:scsi_mod.scan=sync
| 归档时间: |
|
| 查看次数: |
6105 次 |
| 最近记录: |