web-dev-qa-db-fra.com

Ubuntu 18.04 - Dell XPS15 9570 - Impossible de suspendre / hiberner de manière fiable

Malheureusement, j'ai décidé de passer à la version 18.04. Maintenant, je passe la moitié de mes heures de travail à corriger des bugs.

Aujourd'hui, la spécialité est: suspendre l'ordinateur portable. La dernière fois que j'ai essayé de suspendre mon XPS15 9570, j'ai presque brûlé mon nouveau 2000 $ car il fonctionnait pendant 3 heures dans mon sac à dos au lieu d'être suspendu.

Comme cela est bien documenté dans de nombreux threads, hors de la boîte 18.04 sur beaucoup d'ordinateurs portables, il est impossible de suspendre l'ordinateur portable. Il existe des rapports de bogues officiels datant de 3 ans, aucune solution ou correction que ce soit. Il se réveillera simplement après 5 secondes ou lorsque vous fermerez le couvercle (très sournois, très dangereux).

https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/157412https://bugs.launchpad.net/ubuntu/+source/linux/+ bug/1786094

J'ai tout essayé , la seule solution qui fonctionne pour moi est celle rapportée ici:

buntu 18.04 - Dell XPS13 9370 ne se suspend plus à la fermeture du couvercle

qui change la configuration de grub en GRUB_CMDLINE_LINUX_DEFAULT="quiet splash mem_sleep_default=deep"

Avec ce changement, le système se suspend correctement, mais quand il se réveille, l'adaptateur Wi-Fi/Bluetooth est complètement mort, même un redémarrage n'est pas en mesure de les ramener.

Quelque chose de similaire est rapporté ici

https://bugzilla.kernel.org/show_bug.cgi?id=201469

et peut-être ici https://bugzilla.redhat.com/show_bug.cgi?id=1514836

J'ai aussi essayé d'hiberner, sans succès (le système va tout simplement s'arrêter). C'est probablement ma faute car il me manque une partition de swap.

Après avoir passé toute la journée à lire et à essayer une solution, je décide d'ouvrir ce fil. Ma question est simple: comment puis-je, utilisateur final en 2019, suspendre mon ordinateur portable sans arrêter le wifi ou d'autres composants clés de mon matériel?

Je sais que j'ai l'air arrogant mais j'ai perdu une journée de travail sur une fonctionnalité standard qui ne devrait pas poser de problème.

Merci pour toute aide, j'espère que votre journée a été meilleure que la mienne.

8
Alberto Bragagnolo

Éditer /etc/default/grub avec

Sudo vim/etc/default/grub

assurez-vous que la ligne GRUB_CMDLINE_LINUX contient les éléments suivants:

GRUB_CMDLINE_LINUX = "nouveau.blacklist = 1 acpi_osi =! Acpi_osi = \" Windows 2015\"acpi_backlight = fournisseur mem_sleep_default = deep"

ou

GRUB_CMDLINE_LINUX = "nouveau.blacklist = 1 mem_sleep_default = deep"

Insérer acpi_osi=! acpi_osi=\"Windows 2015\ ne changera pas la luminosité de l'écran.

mettre à jour grub:

Sudo update-grub

redémarrer après le redémarrage de l'ordinateur, essayez de suspendre pour voir si l'ordinateur portable se réveille normalement

7
玉麒麟

Première réponse, option 2

GRUB_CMDLINE_LINUX = "nouveau.blacklist = 1 mem_sleep_default = deep"

l'a fait pour moi. XPS 15 9570 Ubuntu 18.04

Je n'avais pas besoin de modifier ce script/lib/systemd/system-sleep.

Je suis tombé sur l'option d'OP il y a quelques jours:

qui change la configuration de grub en GRUB_CMDLINE_LINUX_DEFAULT="quiet splash mem_sleep_default=deep"

mais l'ordinateur portable se réveillait instantanément.

J'ai réactivé cet ancien script dans /lib/systemd/system-sleep/custom-xhci_hcd et puis ça a marché:

#!/bin/bash

# Original script was using /bin/sh but shellcheck reporting warnings.

# NAME: custom-xhci_hcd
# PATH: /lib/systemd/system-sleep
# CALL: Called from SystemD automatically
# DESC: Suspend broken for USB3.0 as of Oct 25/2018 various kernels all at once

# DATE: Oct 28 2018.

# NOTE: From comment #61 at: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/522998

TMPLIST=/tmp/xhci-dev-list

# Original script was: case "${1}" in hibernate|suspend)

case $1/$2 in
  pre/*)
    echo "$0: Going to $2..."
    echo -n '' > $TMPLIST
          for i in `ls /sys/bus/pci/drivers/xhci_hcd/ | egrep '[0-9a-z]+\:[0-9a-z]+\:.*$'`; do
              # Unbind xhci_hcd for first device XXXX:XX:XX.X:
               echo -n "$i" | tee /sys/bus/pci/drivers/xhci_hcd/unbind
           echo "$i" >> $TMPLIST
          done
        ;;
  post/*)
    echo "$0: Waking up from $2..."
    for i in `cat $TMPLIST`; do
              # Bind xhci_hcd for first device XXXX:XX:XX.X:
              echo -n "$i" | tee /sys/bus/pci/drivers/xhci_hcd/bind
    done
    rm $TMPLIST
        ;;
esac

L'écran clignote brièvement une fois pendant la suspension, mais cela a fonctionné à 100% depuis que j'ai activé le paramètre de sommeil deep du noyau.

0
WinEunuuchs2Unix