Como recarregar o driver da Nvidia, (Nvidia Optimus / multiscreen: Como reiniciar o optirun após a hibernação / suspensão)

0

Eu uso os seguintes scripts para inicializar a configuração de tela múltipla:

#!/bin/bash
# Initializes Nvidia Optimus for multi-screen functionality.

sudo modprobe bbswitch
optirun true
intel-virtual-output

Mas quando minha máquina é suspensa, volta para uma única tela. Eu tento reiniciar terminando e inicializando novamente. Termino com o seguinte:

sudo kill -15 $xorg_process
sudo rmmod nvidia
sudo tee /proc/acpi/bbswitch <<<OFF

Em seguida, executo o script de inicialização novamente, mas recebo a seguinte mensagem:

[16929.676769] [ERROR]Cannot access secondary GPU - error: [XORG] (EE) Server terminated successfully (0). Closing log file.

[16929.676811] [ERROR]Aborting because fallback start is disabled.

Teste manual indica que esse erro é proveniente do comando optirun true no script de inicialização. Existe uma maneira de recarregar minha segunda tela depois que minha máquina hibernar? (ou, mais especificamente, como recarregar o driver da Nvidia?)

Estou referenciando a solução para o problema do monitor multiscreen do Optimus (para máquinas com saídas conectadas à GPU separada) aqui .

    
por modulitos 08.03.2014 / 05:40

1 resposta

3

O seguinte funciona para mim em um Thinkpad T520 sob o arco:

Antes de suspender:

killall Xorg
sudo rmmod nvidia
sudo modprobe bbswitch
sudo tee /proc/acpi/bbswitch <<< OFF
sudo systemctl stop bumblebeed

Após o resumo:

sudo rmmod nvidia
sudo modprobe nvidia
sudo modprobe bbswitch
sudo systemctl start bumblebeed
sudo tee /proc/acpi/bbswitch <<< ON
optirun true
intel-virtual-output

Especialmente recarregar o módulo do kernel nvidia parece fazer o truque para mim aqui.

    
por Gerd L. 28.04.2014 / 07:36