Score:3

สคริปต์ udev วิธีแก้ปัญหาแบบกำหนดเองสำหรับข้อผิดพลาดไฮเบอร์เนต/ระงับไม่ทำงาน

ธง cn

ดังนั้นฉันจึงมีแล็ปท็อป ASUS K46CM เครื่องเก่าทำงานอยู่ ซูบุนตู 20.04พร้อมลำโพงที่ใช้งานได้แต่แจ็คเสียงเสีย ตอนนี้ฉันได้ปิดเสียงจาก BIOS เพื่อจัดการกับมัน

นี่เป็นปัญหาใหม่: ฉันไม่สามารถไฮเบอร์เนตหรือระงับแล็ปท็อปเครื่องนี้ได้อีกต่อไป มันสร้างข้อผิดพลาดที่กล่าวว่า:

0000:01:00.1: ไม่สามารถเปลี่ยนสถานะพลังงานจาก D3cold เป็น D0 (ไม่สามารถเข้าถึงพื้นที่กำหนดค่าได้)

ฉัน googled ไปรอบ ๆ และพบคนที่มีปัญหาที่คล้ายกันและวิธีแก้ปัญหาที่ใช้งานได้: ปิดการใช้งานอุปกรณ์ขณะบู๊ตด้วยกฎ udev ที่กำหนดเองจากลิงค์ด้านล่าง:

https://forums.developer.nvidia.com/t/kernel-5-6-system-freeze-when-resuming-from-suspend-or-hibernate/121630/21

กฎ udev ที่เป็นปัญหา:

แมว /etc/udev/rules.d/10-remove-nvidia-audio.rules
ACTION==âaddâ, KERNEL==â0000:01:00.1â, SUBSYSTEM==âpciâ, RUN+="/bin/sh -c âecho 1 > /sys/bus/pci/devices/0000:01:00.1/removeâ"

ยกเว้นว่ามันไม่ได้ผลสำหรับฉัน

อุปกรณ์ที่มีปัญหา:

01:00.1 อุปกรณ์เสียง: NVIDIA Corporation GF108 High Definition Audio Controller (rev ff)

... ยังคงอยู่ในรายการผลลัพธ์ lspci ของฉันหลังจากที่ฉันใส่วิธีแก้ปัญหานั้น:

00:00.0 โฮสต์บริดจ์: Intel Corporation โปรเซสเซอร์ Core รุ่นที่ 3 DRAM Controller (rev 09)
00:01.0 บริดจ์ PCI: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port (rev 09)
00:02.0 คอนโทรลเลอร์ที่เข้ากันได้กับ VGA: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)
00:04.0 ตัวควบคุมการประมวลผลสัญญาณ: Intel Corporation 3rd Gen Core Processor Thermal Subsystem (rev 09)
00:14.0 คอนโทรลเลอร์ USB: Intel Corporation 7 Series/C210 Series Chipset Family USB xHCI Host Controller (rev 04)
00:16.0 ตัวควบคุมการสื่อสาร: Intel Corporation 7 Series/C216 Chipset Family MEI Controller #1 (rev 04)
00:1a.0 คอนโทรลเลอร์ USB: Intel Corporation 7 Series/C216 Chipset Family USB Enhanced Host Controller #2 (rev 04)
00:1c.0 บริดจ์ PCI: Intel Corporation 7 Series/C216 Chipset Family PCI Express Root Port 1 (rev c4)
00:1c.1 PCI บริดจ์: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 2 (rev c4)
00:1c.3 บริดจ์ PCI: Intel Corporation 7 Series/C216 Chipset Family PCI Express Root Port 4 (rev c4)
00:1d.0 คอนโทรลเลอร์ USB: Intel Corporation 7 Series/C216 Chipset Family USB Enhanced Host Controller #1 (rev 04)
00:1f.0 สะพาน ISA: Intel Corporation HM76 Express Chipset LPC Controller (rev 04)
00:1f.2 คอนโทรลเลอร์ SATA: Intel Corporation 7 Series Chipset Family 6-port SATA Controller [โหมด AHCI] (rev 04)
00:1f.3 SMBus: Intel Corporation 7 Series/C216 Chipset Family SMBus Controller (rev 04)
00:1f.6 ตัวควบคุมการประมวลผลสัญญาณ: Intel Corporation 7 Series/C210 Series Chipset Family Thermal Management Controller (rev 04)
01:00.0 คอนโทรลเลอร์ที่รองรับ VGA: NVIDIA Corporation GF108M [GeForce GT 635M] (rev a1)
01:00.1 อุปกรณ์เสียง: NVIDIA Corporation GF108 High Definition Audio Controller (rev ff)
03:00.0 ตัวควบคุมเครือข่าย: Qualcomm Atheros AR9485 Wireless Network Adapter (rev 01)
04:00.0 คลาสที่ไม่ได้กำหนด [ff00]: Realtek Semiconductor Co., Ltd. RTL8411 PCI Express Card Reader (rev 01)
04:00.2 ตัวควบคุมอีเทอร์เน็ต: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 ตัวควบคุมอีเทอร์เน็ต PCI Express Gigabit (rev 0a)

บางทีฉันอาจพลาดอะไรไป พูดตามตรงนี่เป็นครั้งแรกที่ฉันจัดการกับปัญหาเกี่ยวกับกฎ udev

ขอบคุณล่วงหน้า.

kanehekili avatar
zw flag
คุณอาจต้องเปลี่ยนกฎนั้น เนื่องจากผู้ที่เขียนกฎนั้นมีเค้าโครงระบบที่แตกต่างจากคุณ จะเกิดอะไรขึ้นถ้าคุณพิมพ์เทอร์มินัล: `cat /sys/bus/pci/devices/0000:01:00.1/remove` ก็คงไม่มีอยู่จริง ดังนั้นคุณต้องค้นหาช่องที่ถูกต้อง
tezman avatar
cn flag
@kanehekili มีครับแต่จำกัด sudo cat /sys/bus/pci/devices/0000:01:00.1/remove cat: '/sys/bus/pci/devices/0000:01:00.1/remove': ปฏิเสธการอนุญาต นอกจากนี้ตารางสิทธิ์: --w--w---- 1 รูทรูท 4096 4 พ.ย. 10:42 ลบ
tezman avatar
cn flag
แต่มันใช้งานได้เมื่อฉันตรงไปที่ su และดำเนินการคำสั่ง echo ที่นั่น หลังจากนั้น lspci จะไม่แสดงรายการอุปกรณ์ที่มีปัญหาอีกต่อไป แต่ฉันต้องทำสิ่งนี้ตอนบูตเพื่อให้การเปลี่ยนแปลงคงอยู่ และฉันไม่รู้ว่าต้องทำอย่างไร
user.dz avatar
ng flag
ตรวจสอบกับ `udevadm info -a /sys/bus/pci/devices/0000:01:00.1` หากคุณต้องการทดสอบการกำหนดเป้าหมายด้วยแอตทริบิวต์อื่นที่ไม่ใช่ที่อยู่ กฎบางข้อที่มีผลในการบู๊ตจำเป็นต้องอัปเดต ramfs หลังจากการเปลี่ยนแปลงกฎโดยใช้: `sudo update-initramfs -u`

โพสต์คำตอบ

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