ноутбук не может приостановить или спящий режим (просыпается через 2-5 секунд без взаимодействия с пользователем)

Это все началось после обновления до 13.10, теперь я запускаю 14.04 и все еще имею ту же проблему.

Когда я закрываю крышку, или я делаю sudo pm-suspend, ноутбук переходит в режим приостановки для 2-

То же самое происходит, если я пытаюсь сделать спящий режим.

У меня есть ощущение, что что-то пробуждает / выдает CPU из режима приостановки, но я не могу

Любая помощь поможет устранить эту неприятную проблему?

Изменить:

Благодаря @Fabian мне удалось выяснить, что это похоже на Ethernet-карта ошибочна, и даже после того, как я установил карту, чтобы не проснуться на LAN (либо acpitool -W 3, либо echo disabled > /sys/bus/pci/devices/0000:00:19.0/power/wakeup или echo IGBE > /proc/acpi/wakeup, ноутбук продолжает просыпаться и показывать это, когда я делаю acpitool -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

Любая идея, как исходить оттуда?

Сетевым драйвером, который использует IGBE, является e1000e

1
задан 21 April 2014 в 17:36

4 ответа

Следующие работали для меня:

cat /proc/acpi/wakeup

Ищите все элементы со статусом, которые выглядят так, как будто они там не принадлежат (для меня ничего, кроме LID0). Затем отключите их, например:

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

Убедитесь, что соответствующие записи действительно отключены, отправьте ноутбук в режим ожидания и надейтесь на лучшее:)

11
ответ дан 24 May 2018 в 09:17
  • 1
    Очень хорошее руководство, теперь мне нужно выяснить, почему встроенная сетевая карта продолжает просыпаться, даже если я установил режим пробуждения для нее, чтобы отключить – feniix 19 April 2014 в 21:46
  • 2
    Удачи с этим :) – Fabian 19 April 2014 в 21:57
  • 3
    Вы пробовали драйвер rmmod перед приостановкой? (Просто выстрел в темноте) – Rmano 16 May 2014 в 10:04
  • 4
    Такая же неприятная проблема в Ubuntu 16.04.1. Этот ответ не помог, к сожалению. – Dan Dascalescu 20 December 2016 в 09:50
  • 5
    +1 Это единственное решение, которое сработало для меня. – Bandi Kishore 4 January 2017 в 23:23

Испытывая точно такую ​​же проблему (ThinkPad T530, Ubuntu 14.04, но также 13.10 и 13.04, после нескольких приостановок, компьютер возобновляется сразу после приостановки).

Отключение IBGE от пробуждения вообще не помогло.

Как было предложено Романо, я попытался удалить модуль e1000e, и приостановить его, как ожидалось.

Итак:

sudo rmmod e1000e

до приостановки разрешения проблема.

Интересно, что проблема возникает сразу после установки модуля назад (sudo modprobe e1000e) и приостановки без его удаления. Таким образом, это должно было быть связано с аппаратным обеспечением.

Чтобы автоматизировать его, я создал два простых сценария suspend / wakeup (проверенные на вышеупомянутом оборудовании, Ubuntu Trusty 14.04): sudo gedit /etc/pm/sleep.d/99_e1000e_remove:

#!/bin/sh

# Remove e1000e kernel module prior to suspend
rmmod e1000e

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

#!/bin/sh

# Modprobe e1000e kernel module after resume
modprobe e1000e

Сценарии должны быть исполняемыми (sudo chmod +x /etc/pm/sleep.d/99_e1000e_remove /etc/pm/power.d/99_e1000e_probe).

Примечания:

Я предполагаю, что сценарии довольно безопасны для использования, даже если они не затрагивают вашу проблему. Я не использую LAN wakeup, поэтому я не знаю, как это работает с исправлением.
7
ответ дан 24 May 2018 в 09:17
  • 1
    Ноутбук имеет ту же проблему, что и Windows (я только что установил Windows 7 для своей жены на компьютере, потому что получил новый), и он делает то же самое. Таким образом, это может быть связанное с оборудованием / прошивкой – feniix 27 May 2014 в 03:30
  • 2
    Здравствуй. Я использую Ubuntu 14.04 LTS с Thinkpad X201. Это решение, удаляющее e1000e с помощью небольших вспомогательных скриптов, помогло снова приостановить работу. Большое спасибо ! – apos 27 August 2014 в 19:32
  • 3
    Я могу подтвердить, что такое же решение работает на Thinkpad T540p и Ubuntu 14.04. Кажется, что что-то не так внутри модуля e1000e. Это случается только с самого начала, в большинстве случаев приостановка работает хорошо. Если проблема появляется, я rmmod e1000e, то я могу приостановить успешно. Однако, если я снова modprobe снова после возобновления, следующая приостановка будет работать даже с присутствующим модулем. Таким образом, "сброс" модуль e1000e, похоже, делает трюк для меня. – mindriot 11 October 2016 в 22:17

Это сработало для меня (взято из другого потока на askubuntu):

Ubuntu 14.04 просыпаться сразу после suspend

Вы можете попытаться отключить его с помощью скрипта Upstart при каждом запуске автоматически : Создать файл etc/init/disable-XHC.conf Содержимое:
start on started dbus
stop on stopping dbus

script
   sudo -u root sh -c "echo 'XHC' > /proc/acpi/wakeup"
end script
1
ответ дан 24 May 2018 в 09:17

Решение systemd должно создать инструкцию для systemd-tmpfiles для записи чего-либо в файл при его вызове.

Создайте файл в /etc/tmpfiles.d, например. /etc/tmpfiles.d/disable-network-wake.conf со следующим содержимым, в зависимости от того, какое устройство вы хотите отключить пробуждение.

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

См. также systemd-tmpfiles (8) и tmpfiles.d (5).

Ссылка: https://wiki.archlinux.org/index.php/Systemd#Temporary_files

0
ответ дан 24 May 2018 в 09:17

Другие вопросы по тегам:

Похожие вопросы: