laptop gagal ditangguhkan atau hibernasi (bangun setelah 2-5 detik tanpa interaksi pengguna)

22

Ini semua mulai terjadi setelah peningkatan ke 13.10, sekarang saya menjalankan 14.04 dan masih memiliki masalah yang sama.

Ketika saya menutup tutupnya atau saya lakukan sudo pm-suspendlaptop akan ditangguhkan selama 2-5 detik dan terbangun dengan sendirinya.

Hal yang sama terjadi jika saya mencoba melakukan hibernate.

Saya punya firasat bahwa ada sesuatu yang membangunkan / mengeluarkan cpu dari mode suspend tapi saya tidak tahu apa.

Adakah bantuan untuk memecahkan masalah yang mengganggu ini?

Edit:

Berkat @Fabian, saya bisa mengetahui bahwa sepertinya kartu ethernet mengalami gangguan dan bahkan setelah saya mengatur kartu untuk tidak bangun pada lan (baik melakukan acpitool -W 3atau echo disabled > /sys/bus/pci/devices/0000:00:19.0/power/wakeupatau echo IGBE > /proc/acpi/wakeup, laptop terus bangun dan menunjukkan ini ketika saya melakukanacpitool -w

Device  S-state   Status   Sysfs node
---------------------------------------
1. LID    S3    *enabled 
2. SLPB   S3    *disabled
3. IGBE   S4    *enabled   pci:0000:00:19.0
4. EXP1   S4    *disabled  pci:0000:00:1c.0
5. EXP2   S4    *disabled  pci:0000:00:1c.1
6. EXP3   S4    *disabled
7. EXP4   S4    *disabled
8. EXP5   S4    *disabled  pci:0000:00:1c.4
9. EHC1   S3    *disabled  pci:0000:00:1d.0
10. EHC2      S3    *disabled  pci:0000:00:1a.0
11. HDEF      S4    *disabled  pci:0000:00:1b.0

Adakah cara untuk melanjutkan dari sana?

Driver jaringan yang digunakan IGBE adalah e1000e

feniix
sumber
3
gunakan dmesguntuk melihat pesan terbaru dari kernel, sesuatu di sana bisa memberi Anda petunjuk tentang apa yang terjadi.
roadmr
Sudahkah Anda menonaktifkan fitur Wake-On-Lan di BIOS?
Mitch
Ya, itu adalah hal pertama yang saya coba.
feniix

Jawaban:

10

Saya memiliki motherboard berbasis kernel 13.13 dan Intel Z77X, dan perintah berikut berfungsi untuk saya:

sudo sh -c "echo EHC1 > /proc/acpi/wakeup;echo EHC2 > /proc/acpi/wakeup;echo XHC > /proc/acpi/wakeup"
tamu
sumber
11

Berikut ini bekerja untuk saya:

cat /proc/acpi/wakeup

Cari item apa pun dengan status diaktifkan yang tampaknya tidak ada di sana (bagi saya, apa pun kecuali LID0). Kemudian nonaktifkan dengan mengatakan, misalnya:

sudo sh -c "echo XHC0 > /proc/acpi/wakeup"

Periksa apakah entri yang sesuai memang telah dinonaktifkan, kirim laptop ke penangguhan dan berharap yang terbaik :)

Fabian
sumber
Prospek yang sangat bagus, sekarang saya perlu mencari tahu mengapa kartu ethernet terintegrasi terus bangun meskipun saya mengatur mode bangun untuk dinonaktifkan
feniix
1
Semoga berhasil dengan itu :)
Fabian
1
Sudahkah Anda mencoba rmmodpengemudi sebelum menangguhkan? (Hanya satu tembakan dalam gelap)
Rmano
Masalah menjengkelkan yang sama di Ubuntu 16.04.1. Sayangnya, jawaban ini tidak membantu.
Dan Dascalescu
+1 Ini adalah satu-satunya solusi yang berfungsi untuk saya.
Bandi Kishore
7

Mengalami masalah yang persis sama (ThinkPad T530, Ubuntu 14.04, tetapi juga 13.10 dan 13.04, setelah beberapa penundaan, komputer dilanjutkan segera setelah ditangguhkan).

Menonaktifkan IBGE dari bangun tidak membantu sama sekali.

Seperti yang disarankan oleh Romano, saya sudah mencoba mengeluarkan modul e1000e, dan voila menangguhkan seperti yang diharapkan.

Begitu:

sudo rmmod e1000e

sebelum menangguhkan menyelesaikan masalah.

Menariknya, masalah muncul kembali segera setelah menginstal modul kembali ( sudo modprobe e1000e) dan menangguhkan tanpa melepasnya. Jadi, itu pasti sesuatu yang berhubungan dengan perangkat keras.

Untuk mengotomatiskannya, saya telah membuat dua skrip suspend / wakeup sederhana (diuji pada perangkat keras yang disebutkan di atas, Ubuntu Trusty 14.04) sudo gedit /etc/pm/sleep.d/99_e1000e_remove::

#!/bin/sh

# Remove e1000e kernel module prior to suspend
rmmod e1000e

dan sudo gedit /etc/pm/power.d/99_e1000e_probe:

#!/bin/sh

# Modprobe e1000e kernel module after resume
modprobe e1000e

Skrip harus dapat dieksekusi ( sudo chmod +x /etc/pm/sleep.d/99_e1000e_remove /etc/pm/power.d/99_e1000e_probe).

Catatan:

  • Saya menganggap skrip cukup aman untuk digunakan bahkan ketika itu tidak mengatasi masalah Anda.
  • Saya tidak menggunakan LAN wakeup, jadi saya tidak tahu bagaimana perilakunya dengan perbaikan.
sopvkore
sumber
Laptop memiliki masalah yang sama menggunakan windows (saya baru saja menginstal windows 7 untuk istri saya di komputer karena saya punya yang baru) dan tidak persis sama. Jadi mungkin terkait hardware / firmware
feniix
1
Hai. Saya menggunakan Ubuntu 14.04 LTS dengan Thinkpad X201s. Solusi ini menghapus e1000e dengan skrip pembantu kecil membantu menunda untuk bekerja lagi. Terima kasih banyak !
apos
1
Saya dapat mengkonfirmasi solusi yang sama berfungsi pada Thinkpad T540p dan Ubuntu 14.04. Sepertinya ada yang salah di dalam e1000emodul. Ini hanya terjadi sesekali untuk memulainya, sebagian besar waktu penangguhan berfungsi dengan baik. Jika masalah muncul, saya rmmod e1000e, maka saya dapat menangguhkan dengan sukses. Namun, jika saya modprobemelakukannya lagi setelah melanjutkan, penangguhan berikutnya akan bekerja bahkan dengan kehadiran modul. Jadi "mengatur ulang" e1000emodul tampaknya melakukan trik untuk saya.
mindriot
1

Ini bekerja untuk saya (diambil dari utas lain di askubuntu):

Ubuntu 14.04 bangun segera setelah ditangguhkan

Anda dapat mencoba menonaktifkannya dengan skrip Upstart setiap startup secara otomatis:

Buat file etc/init/disable-XHC.conf

Konten:

start on started dbus
stop on stopping dbus

script
   sudo -u root sh -c "echo 'XHC' > /proc/acpi/wakeup"
end script
Ilian
sumber
0

Solusi systemd adalah membuat instruksi untuk systemd-tmpfiles untuk menulis sesuatu ke file ketika dipanggil.

Buat file di /etc/tmpfiles.d, misalnya /etc/tmpfiles.d/disable-network-wake.conf, dengan konten berikut, tergantung pada perangkat apa yang Anda inginkan untuk menonaktifkan wakeup.

w /proc/acpi/wakeup - - - - XHC

Lihat juga systemd-tmpfiles (8) dan tmpfiles.d (5).

Ref: https://wiki.archlinux.org/index.php/Systemd#Temporary_files

FichteFoll
sumber