laptop não consegue suspender ou hibernar (acorda após 2-5 segundos sem interação com o usuário)

22

Tudo isso começou depois da atualização para o 13.10, agora estou rodando o 14.04 e ainda tenho o mesmo problema.

Quando fecho a tampa ou faço sudo pm-suspend , o laptop fica suspenso por 2 a 5 segundos e acorda sozinho.

O mesmo acontece se eu tentar fazer o hibernate.

Eu tenho uma sensação de que algo está despertando / tirando o cpu do modo de suspensão, mas não consigo descobrir o que.

Alguma ajuda para solucionar esse problema irritante?

Editar:

Graças a @Fabian, consegui descobrir que parece que a placa ethernet está se comportando mal e mesmo depois de configurar o cartão para não acordar na lan (fazendo acpitool -W 3 ou echo disabled > /sys/bus/pci/devices/0000:00:19.0/power/wakeup ou echo IGBE > /proc/acpi/wakeup , o laptop continua acordando e mostrando isso quando eu faço 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

Alguma ideia de como proceder a partir daí?

O driver de rede usado pelo IGBE é e1000e

    
por feniix 18.04.2014 / 17:53

5 respostas

10

Tenho uma motherboard baseada em kernel 13.13 e Intel Z77X, e o seguinte comando funciona para mim:

sudo sh -c "echo EHC1 > /proc/acpi/wakeup;echo EHC2 > /proc/acpi/wakeup;echo XHC > /proc/acpi/wakeup"
    
por guest 22.10.2014 / 17:33
11

O seguinte funcionou para mim:

cat /proc/acpi/wakeup

Procure por itens com status ativado que pareçam não pertencer lá (para mim, qualquer coisa, exceto LID0). Em seguida, desative-os dizendo, por exemplo:

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

Verifique se as entradas correspondentes foram de fato desativadas, envie o laptop para suspensão e espere pelo melhor:)

    
por Fabian 19.04.2014 / 18:16
7

Experimentando exatamente o mesmo problema (ThinkPad T530, Ubuntu 14.04, mas também 13.10 e 13.04, após alguns suspendos, o computador é retomado imediatamente após a suspensão).

Desabilitar o IBGE da ativação não ajudou em nada.

Como sugerido por Romano, tentei remover o módulo e1000e, e suspender como esperado.

Então:

sudo rmmod e1000e

antes de suspender resolve o problema.

Curiosamente, o problema reaparece imediatamente após a instalação do módulo de volta ( sudo modprobe e1000e ) e a suspensão sem a sua remoção. Então, deve ter sido algo relacionado ao hardware.

Para automatizá-lo, criei dois scripts simples de suspensão / ativação (testados no hardware mencionado acima, o Ubuntu Trusty 14.04): sudo gedit /etc/pm/sleep.d/99_e1000e_remove :

#!/bin/sh

# Remove e1000e kernel module prior to suspend
rmmod e1000e

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

#!/bin/sh

# Modprobe e1000e kernel module after resume
modprobe e1000e

Os scripts devem ser executáveis ( sudo chmod +x /etc/pm/sleep.d/99_e1000e_remove /etc/pm/power.d/99_e1000e_probe ).

Notas:

  • Eu assumo que os scripts são bastante seguros para usar mesmo quando não resolva seu problema.
  • Eu não estou usando a ativação da LAN, então não sei como se comporta com a correção.
por sopvkore 26.05.2014 / 22:30
1

Isso funcionou para mim (tirado de outro thread no askubuntu):

O Ubuntu 14.04 acorda imediatamente após a suspensão

  

Você pode tentar desativá-lo com um script Upstart a cada inicialização   automaticamente:

     

Crie um arquivo etc/init/disable-XHC.conf

     

Conteúdo:

start on started dbus
stop on stopping dbus

script
   sudo -u root sh -c "echo 'XHC' > /proc/acpi/wakeup"
end script
    
por Ilian 05.04.2015 / 16:00
0

A solução systemd é criar uma instrução para systemd-tmpfiles para gravar algo em um arquivo quando ele é invocado.

Crie um arquivo em /etc/tmpfiles.d , por exemplo /etc/tmpfiles.d/disable-network-wake.conf , com o seguinte conteúdo, dependendo do dispositivo para o qual você deseja desativar o despertador.

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

Veja também systemd-tmpfiles (8) e tmpfiles.d (5).

Ref: link

    
por FichteFoll 27.08.2017 / 14:27