• # Workaround, etc...

    Posté par . En réponse au message Problème de sortie d'hibernation (HDMI et réseau). Évalué à 3. Dernière modification le 07 août 2019 à 10:28.

    Bon ... on va passer sur le côté assez illisible de ton post, l'absence de point d'interrogation et de question clairement formulée, et le manque flagrant de détail quant à ton setup (gestionnaire de fenêtre/bureau ? gestionnaire de réseau ?? Méthode utilisée pour déclencher l'hibernation) pour essayer de te fournir un début d'aide ...

    J'utilise un portable entre un bureau pro (écran HD), un bureau perso (écran 1680*1200) et une télé. En général, je réveille le PC en l'ayant branché sur un écran différent.
    Et très souvent la configuration HDMI est ratée. Il suffirait de garder la même : 2 écrans côte à côte. Mais souvent le PC principal a un écran noir ou une résolution écran correspondant au 1680 (avec le bas coupé donc). Il faut brancher/débrancher le câble HDMI, etc... et avec rien sur l'écran, c'est compliqué. Si au moins l'écran du PC était toujours le principal au réveil, cela réglerait 80% des problèmes (mode clone ou 2 écrans)

    C'est un peu logique en même temps... tu changes la configuration hardware a la volée, faut pas s'étonner que ça marche pas super.
    Personnellement,j'ai un problème similaire avec ma machine du boulot. Je l'ai résolu en désactivant l'écran externe avant la mise en veille via un petit script que je m'étais codé pour l'occasion.
    Tu dois pouvoir aussi le faire directement dans le script shell en charge de "trigger" l'hibernation (/etc/acpi) via la commande xrandr.

    Le son ne suit pas toujours non plus. Il faut souvent refaire le réglage à la main dans volume audio > avancé > Profil.

    Ca, ça ressemble plus à un bug de ton pilote audio...
    Pareil, tu dois pouvoir scripter la remise en "état" de ta configuration dans les scripts ACPI.

    Il y a aussi la configuration réseau, le truc ne fait pas tout seul ifdown wlo1 && ifup wlo1 quand le wifi change entre pro et perso.Il faut même faire la même chose pour le réseau filaire alors que j'ai toujours branché un câble Ethernet n'importe comment dans le passé, et cela marchait.

    C'est pareil ... Au final, si avant la mise en veille et après la mise en veille ton chip ethernet a toujours un "link", comment veux tu qu'il détecte qu'il doit faire un ifdown puis ifup ???
    Concernant le wifi, même combat... Il faut probablement attendre qu'un timeout soit levé disant "y a plus l'AP" pour déclencher le processus désactivation du lien/recherche d'un autre AP.

    Comme je te l'ai suggéré pour ton soucis d'écran, je pense qu'une desactivation du réseau "propre" lors de l'hibernation peut être une bonne idée...

    EDIT:
    Sur ma debian, c'est le script /usr/sbin/pm-hibernate qui se charge de l'hibernation.
    En lisant ce script, j'ai remarqué ça:

    # run the sleep hooks
    log "$(date): Running hooks for $ACTION."
    if run_hooks sleep "$ACTION$METHOD"; then
     # Sleep only if we know how and if a hook did not inhibit us.
     log "$(date): performing $METHOD"
     sync
     "do_$METHOD" || r=128
     log "$(date): Awake."
    else
     log "$(date): Inhibit found, will not perform $METHOD"
    fi
    log "$(date): Running hooks for $REVERSE"
    # run the sleep hooks in reverse with the wakeup action
    if run_hooks sleep "$REVERSE$METHOD" reverse; then
     log "$(date): Finished."
    else 
     exit $((r+1))
    fi

    J'en déduis donc qu'il y a moyen de définir des hooks te permettant de mettre au carré ton système avant et après l'hibernation.
    Je te laisse creuser pour savoir ou et comment définir ces hooks.