ข้อผิดพลาดของ Ubuntu 18.04 เมื่อตื่นขึ้นจากโหมดสลีป: อ่านข้อผิดพลาดบนอุปกรณ์สลับ


11

หลังจากแล็ปท็อปอยู่ในโหมดสลีปเป็นเวลาสองชั่วโมงเมื่อฉันลองเซสชันของฉันต่อแล้วฉันได้รับข้อผิดพลาดต่อไปนี้:

อ่านข้อผิดพลาดบนอุปกรณ์สลับ

ใช้เวลาประมาณ 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] แคช: parent cpu1 ไม่ควรหลับ
[64046.475859] CPU1 ขึ้นแล้ว
[64046.475910] smpboot: การบูตโหนด 0 โปรเซสเซอร์ 2 APIC 0x4
[64046.476330] แคช: parent cpu2 ไม่ควรหลับ
[64046.476506] CPU2 ขึ้นแล้ว
[64046.476539] smpboot: การบูตโหนด 0 โปรเซสเซอร์ 3 APIC 0x6
[64046.477071] แคช: parent cpu3 ไม่ควรหลับ
[64046.477255] CPU3 ขึ้น
[64046.477274] smpboot: การบูตโหนด 0 โปรเซสเซอร์ 4 APIC 0x1
[64046.477721] แคช: parent cpu4 ไม่ควรหลับ
[64046.477922] CPU4 ขึ้น
[64046.477947] smpboot: การบูตโหนด 0 โปรเซสเซอร์ 5 APIC 0x3
[64046.478371] แคช: parent cpu5 ไม่ควรหลับ
[64046.478571] CPU5 ขึ้นแล้ว
[64046.478591] smpboot: การบูตโหนด 0 โปรเซสเซอร์ 6 APIC 0x5
[64046.479018] แคช: parent cpu6 ไม่ควรหลับ
[64046.479229] CPU6 ขึ้นแล้ว
[64046.479247] smpboot: การบูตโหนด 0 โปรเซสเซอร์ 7 APIC 0x7
[64046.479675] แคช: parent 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: รีเซ็ตหมายเลขอุปกรณ์ USB ความเร็วเต็ม 2 โดยใช้ xhci_hcd
[64046.976869] ata4: ลิงก์ SATA ลง (SStatus 4 SControl 300)
[64046.976892] ata2: ลิงก์ SATA ลง (SStatus 4 SControl 300)
[64047.149289] usb 1-6: รีเซ็ตอุปกรณ์ USB ความเร็วสูงหมายเลข 40 โดยใช้ xhci_hcd
[64047.437370] psmouse serio1: synaptics: สอบถามพิกัดสูงสุด: x [..5660], y [..4570]
[64047.476302] psmouse serio1: synaptics: การค้นหาขั้นต่ำพิกัด: x [1364 .. ], y [1284 .. ]
[64047.922603] เปิดใช้งาน OOM killer แล้ว
[64047.922605] กำลังเริ่มงานใหม่ ... เสร็จแล้ว
[64047.928727] thermal thermal_zone1: ล้มเหลวในการอ่านโซนความร้อน (-61)
[64047.930036] บลูทู ธ : hci0: การแก้ไข Bootloader 0.0 สร้าง 2 สัปดาห์ 52 2014
[64047.935036] บลูทู ธ : hci0: การแก้ไขอุปกรณ์คือ 5
[64047.935037] Bluetooth: hci0: เปิดใช้งานการบูตอย่างปลอดภัย
[64047.935038] บลูทู ธ : hci0: เปิดใช้การล็อค OTP
[64047.935038] Bluetooth: hci0: เปิดใช้ API lock แล้ว
[64047.935039] บลูทู ธ : hci0: การล็อคการดีบักถูกปิดใช้งาน
[64047.935040] Bluetooth: hci0: สร้างเฟิร์มแวร์ขั้นต่ำ 1 สัปดาห์ 10 2014
[64047.935042] บลูทู ธ : hci0: พบเฟิร์มแวร์ของอุปกรณ์: intel / ibt-11-5.sfi
[64047.944372] PM: ออกจากระงับชั่วคราว
[64048.050329] ข้อผิดพลาดในการอ่านบนอุปกรณ์สลับ (8: 0: 1543400288)
[64048.460888] [drm] RC6 บน

โปรดแจ้งให้เราทราบหากต้องการข้อมูลอื่น ๆ


ฉันมีปัญหาที่คล้ายกันมาก - หลังจากอัปเกรดเป็น 18.04 การปิดฝาแล็ปท็อปจะส่งผลให้เกิดข้อความแสดงข้อผิดพลาดเดียวกัน (อ่านข้อผิดพลาดบนอุปกรณ์สลับ) และรีบูต หากคุณจัดการเพื่อค้นหาการแก้ไขที่อื่นมันจะดีถ้าคุณสามารถแบ่งปันได้ที่นี่
Adrian

1
มีปัญหาเดียวกันแน่นอน ฉันได้ทำการวิจัยและผู้ใช้งานบน arch Linuxพบปัญหาเดียวกันเมื่อสองสามเดือนก่อนและสรุปว่าอาจมีบางอย่างที่เกี่ยวข้องกับเคอร์เนล 4.15
user8814

คำตอบ:


10

เคอร์เนล Ubuntu 18.04 ที่คุณกำลังใช้ไม่มีการแก้ไขข้อบกพร่องที่สำคัญ

การแก้ไขสำหรับสิ่งนี้มีอยู่แล้วในเคอร์เนล upstream Linux เวอร์ชัน 4.16.8 (ข้อผิดพลาดการระงับเริ่มเกิดขึ้นอย่างมีประสิทธิภาพในเคอร์เนลเวอร์ชัน 4.15) อูบุนตูต้องการเพียงแค่หยิบ Patch เล็ก ๆ นี้มาจากต้นน้ำ ข้อผิดพลาดบ่อยครั้งทำให้เกิด 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 ไม่เฉพาะเจาะจงกับไดรเวอร์ฮาร์ดแวร์ใด ๆ เทคนิคระงับข้อผิดพลาดจะถูกเรียกโดยแกน SCSI - ซึ่งถูกใช้โดยอุปกรณ์ SATA ทั้งหมด

ความมุ่งมั่นยังรวมถึงการทดสอบที่รวดเร็วและเชื่อถือได้พิสูจน์การมีอยู่ของข้อผิดพลาดที่น่ากลัว

ฉันเดาว่าคุณอาจหลีกเลี่ยงข้อผิดพลาดนี้เฉพาะเมื่อคุณรูทบน NVMe อีกวิธีหนึ่งที่จะไม่ชนกับ Xorg crash ก็คือถ้าคุณไม่ได้ใช้ RAM ทั้งหมดของคุณดังนั้นจึงไม่มีแรงกดดันใด ๆ ที่จะนำไปสู่หน้าหนาวของ Xorg ที่ถูกสลับสับเปลี่ยน นอกจากนี้คุณจะไม่ทำซ้ำ Xorg crash หากคุณระงับ + ดำเนินการต่อทันที (สิ่งนี้ทำให้การทดสอบของฉันผิดหวังเมื่อถึงจุดหนึ่งมันเกิดขึ้นหลังจากออกจากระบบที่หยุดชั่วคราวในช่วงพักกลางวันเท่านั้น)

แก้ไข: "บล็อก: อย่าใช้รอขัดจังหวะที่ใดก็ได้"

ในเคอร์เนล 4.17: https://github.com/torvalds/linux/commit/1dc3039bc87ae7d19a990c3ee71cfd8a9068f428

ในเคอร์เนล 4.16.8: https://git.kernel.org/pub/scm/linux/kernel/gable/stable/linux-stable.git/commit/?h=linux-4.16.y&id=7859056bc73dea2c3714b00c83b253d4c22bf7b6 ใน

ไม่มีการแก้ไขใน 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 = อูบุนตู 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


สุดยอดการทำงานรอบ ๆ ! ยืนยันใน Ubuntu 18.04 w / 4.15 เคอร์เนล
ricosrealm

จริงๆแล้วสิ่งนี้ไม่ได้ผลหลังจากการทดสอบครั้งที่สอง
ricosrealm

@ricosrealm ที่ไม่คาดคิดมากที่สุด โปรดยืนยันว่าปัญหาของคุณคือ (บางครั้ง) แสดงเป็น SIGBUS (หมายเลขสัญญาณ 7) ใน Xorg หรือ gnome-shell นี่เป็นเรื่องง่ายหากคุณsystemd-coredumpติดตั้งและใช้งานcoredumpctl -rแต่ฉันไม่รู้ว่าต้องทำอย่างไรเมื่อคุณติดตั้ง apport (systemd-coredump และแพคเกจ apport ขัดแย้งกันโปรดใช้วิจารณญาณ)
sourcejedi

@ricosrealm แต่อย่างน้อยฉันจะขอให้คุณยืนยันว่า 1) เซสชั่นกราฟิกปัจจุบันของคุณจะหายไป แต่ระบบยังคงสามารถใช้งานได้เป็นอย่างอื่นและคุณสามารถกลับเข้าสู่ระบบอีกครั้ง 2) dmesgไม่ได้แสดง "segfault" ข้อความ Xorg / gnome-เปลือก . (และโดยทั่วไปแล้วฉันไม่เห็นข้อผิดพลาดของเคอร์เนล แต่คุณอาจเห็น "ข้อผิดพลาดการอ่านบนอุปกรณ์สลับ" ในบางครั้ง)
sourcejedi

@ricosrealm Btw แพทช์ดูเหมือนว่าจะมีความคืบหน้าอีกเล็กน้อยตั้งแต่ฉันโพสต์คำตอบ lists.ubuntu.com/archives/kernel-team/2018-June/093612.html
sourcejedi
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.