NB: A Nvidia lançou uma correção oficial; consulte a resposta do ByteCommander , minha própria resposta e / ou a resposta de Kaz Wolfe .
Ao ativar o Ubuntu 16.04 a partir do Suspend, as seguintes falhas gráficas aparecem em todas as janelas, menus de contexto e similares:
Atualmente, sabe-se que isso afeta as seguintes placas NVIDIA que executam os drivers proprietários:
- NVIDIA GeForce 610M, versão do driver 375.39, 340.102
- NVIDIA GT 630M, versão do driver 375.39
- NVIDIA GTX 650, versão do driver 375.39
- NVIDIA GT 740M, versão do driver 378.13
- NVIDIA GTX 745, versão desconhecida do driver
- NVIDIA GTX 850M, versão do driver 375.39, 378.13
- NVIDIA GT 940M, versão do driver 375.39
- NVIDIA GTX 950M, versão desconhecida do driver
- NVIDIA GTX 960M, versão do driver 378.13
- NVIDIA GTX 970, versão do driver 375.39
- NVIDIA GTX 970M, versão do driver 375.39
- NVIDIA GTX 980 TI, versão desconhecida do driver
- NVIDIA GTX 1060, versão do driver 375.26, 375.39, 378.09
- NVIDIA GTX 1070, versão do driver 378.09
A lista acima foi criada a partir de relatórios de outros usuários aqui na AU, neste tópico e neste tópico.
NB: Não se trata de uma lista exclusiva. Provavelmente afeta quase todas as placas Nvidia.
Além disso, esse problema foi replicado em uma instalação limpa, onde a única alteração foi uma atualização de software e a instalação dos drivers NVIDIA mais recentes.
O que está acontecendo e como pode ser resolvido?
nvidia
graphics
suspend
visual-artifacts
Android Dev
fonte
fonte
lspci -k | grep -iEA3 '3d|vga'
que contém toda a informação solicitada. Obrigado.nvidia-367
driver que usei se tornou um pacote de transição que é atualizado automaticamentenvidia-375
, uma das versões que causam esse bug. Hora de importar a nvidia e escrever relatórios de erros.GeForce GTX 950M
.Respostas:
Nota: Esta foi uma solução temporária até a Nvidia lançar um driver corrigido. Role para baixo para encontrar as outras respostas com a correção real. - Desenvolvedor Android
Tenho o mesmo problema usando a GPU: Nvidia GTX 970 com o driver nvidia 375.39 no Ubuntu 16.04.2 LTS
Eu observei isso desde uma atualização recente do driver da nvidia. Assim, suspeito que seja um bug no driver.
Encontrei uma resposta no quadro da nvidia . É um bug confirmado no driver e a nvidia aparentemente já está trabalhando nele. Enquanto isso, pode-se reiniciar o compiz com
para se livrar dos artefatos.
O bug está no sistema de rastreamento de bugs do Ubuntu, incluindo um script de solução alternativa para reiniciar automaticamente o compiz após o resumo.
fonte
compiz --replace
não se comporta bem com os espaços de trabalho. Ela coloca todas as janelas de todos os espaços de trabalho para o primeiro espaço de trabalho :(ATUALIZAÇÃO 2:
A Nvidia agora também atualizou seus
nvidia-375
drivers para a versão 375.66 , disponível nos repositórios padrão do Ubuntu de todos os lançamentos atualmente suportados .Isso significa que, a partir de agora, você não precisará mais executar nenhuma ação especial , exceto as atualizações normais do sistema, como sempre. Você não precisa do pacote de drivers do
graphics-drivers
PPA se não os desejar.Aqui está o trecho do changelog para o pacote dos principais repositórios no 16.04 sobre este bug:
ATUALIZAR:
A Nvidia finalmente corrigiu esse problema e lançou uma nova versão do driver de trabalho:
nvidia-381
A solução descrita nesta resposta também foi atualizada e agora sugere atualizar para esta versão fixa em vez de fazer o downgrade para a versão mais recente antes do bug. No entanto, continua o mesmo procedimento, basta mudar os nomes dos pacotes.
Causa do problema:
Alguns dos Nvidia pacotes gráficos driver proprietário para Ubuntu (ou seja,
nvidia-375
envidia-378
) são buggy e produzir os artefatos brancas ao redor bordas das janelas que são mostrados em seus screenshots em questão. Isso acontece de forma reproduzível toda vez que você suspende e acorda novamente.Até alguns dias atrás, o
nvidia-367
pacote no repositório do Xenial estava funcionando bem e de forma confiável, mas agora eles o atualizavam e o convertiam em um pacote de transição que instala automaticamente anvidia-375
versão de buggy .Solução (atualizada após o lançamento da correção de bug da Nvidia):
Minha solução no momento é fazer o downgrade denvidia-375
ounvidia-378
paranvidia-370
, o que parece funcionar bem até agora.Como a Nvidia lançou uma nova versão de driver atualizada
nvidia-381
com esse bug corrigido, podemos (e devemos) instalar esse em vez de fazer o downgrade.Este pacote não está disponível nos repositórios padrão, mas você pode obtê-lo facilmente de um PPA e substituir o driver atual executando os comandos abaixo:
Depois de concluir esse procedimento, reinicie o computador e teste se você ainda tem problemas. Para mim eles se foram. Boa sorte.
fonte
apt
voltar ao estado em que novas atualizações são recebidas automaticamente novamente. Você também precisará verificar ativamente se a nova versão corrigida corretamente será lançada, em vez de apenas esperar para obtê-la automaticamente - Problema propenso e inconveniente.nvidia-370
muito provável que também se transforme em um pacote de transiçãonvidia-367
, e, portanto, essa atualização instalaria automaticamente a versão do driver nvidia / que a equipe de drivers gráficos considera como sucessora adequada. O 370 é o driver mais recente (e talvez apenas) atualmente suportado que não é afetado por esse bug, então por que não usá-lo? Comparado aos 367 que estavam em uso antes da atualização que introduz esse bug, ainda é uma atualização. Além disso, não estamos retendo nenhum pacote ou substituindo qualquer configuração do apt, como você parece pensar.graphics-drivers
PPA farão com seus pacotes no futuro; posso apenas fazer suposições com base no que eles fizeram no passado. E enquanto o 370 for suportado, não há necessidade de agir, mesmo quando eles consertam os 375 e 378. Meu forte palpite é que, uma vez que a nvidia desaprova o 370 (como fizeram recentemente com o 367), os mantenedores do PPA o transformarão. em um pacote de transição, o que significa que a versão atualizada não conterá mais código, mas acrescentará uma dependência ao driver mais recente.Este
éum erro nos drivers da Nvidia.A Nvidia conseguiu reproduzir o problema
e está trabalhando em uma correção, que será incluída no próximo lançamento do driver.(A correção foi lançada agora, consulte a seção abaixo).Veja este tópico nos fóruns de desenvolvedores da Nvidia para obter mais informações. Este bug também foi relatado no Launchpad .
Obrigado a @Stefan por suas grandes habilidades em descobrir essas informações !
A Nvidia finalmente lançou uma correção oficial!
A correção é uma cortesia do driver beta 381.09 Captura de tela relevante do changelog :
Esse driver não está atualmente em nenhum repositórioAté as alterações acima, você precisará instalar o novo driver manualmente. Atualização: o driver 381.09 agora está em um repositório não oficial. Você pode instalar o driver corrigido do PPA não oficial ou instalá-lo manualmente.ATUALIZAÇÃO - CORRIGIR AGORA NO REPO OFICIAL:
Parabéns a @ ubfan1 por reportar isso ! Veja a seção abaixo para detalhes
1. Instalação do driver [release] corrigido a partir do repositório oficial (recomendado):
A Nvidia enviou uma atualização para o driver de lançamento em 05/04/2017, contendo, entre outras coisas, a correção de bug que você estava procurando. O driver de versão atualizado recebeu a versão
375.66
Como isso
375.66
está no repositório oficial, carregar o driver corrigido é bastante simples.Se você está atualmente na
375.39
versão com bugs , tudo o que deve ser necessário é simples:Se você estiver no driver herdado, execute:
Em seguida, mude para a nova versão do driver em Drivers adicionais:
Se você estiver usando um driver instalado manualmente, desinstale, reinicie e execute as etapas descritas acima.
Após a reinicialização, você deve descobrir que o driver da Nvidia foi atualizado para
375.66
.2. Se você não precisar do driver mais recente para compatibilidade com sua GPU: *
* Observe que esta seção foi substituída pela seção # 1
Se a sua placa gráfica tiver idade suficiente para ser suportada pela v340 do driver, não será necessário instalar uma versão mais recente de um PPA não oficial. No entanto, para pessoas com placas mais novas, como as séries GTX 9 ou 10, você precisará de um driver mais recente.
Por conveniência, aqui está uma lista completa dos cartões suportados pela versão 340 do driver:
Portanto, se sua GPU é suportada pelo 340, você pode simplesmente mudar para a versão 340 em Drivers adicionais. (A versão 340 não possui esse bug.)
Certifique-se de reiniciar depois de mudar a versão do driver.
3. Para instalar o driver [beta] corrigido de um PPA não oficial (
recomendado):Inicie um terminal com CTRL+ ALT+T
Execute estes comandos:
Reinicie o seu computador e você deve estar pronto! Após a reinicialização do computador, abra as Configurações do Nvidia X Server. Com alguma sorte, você verá a nova versão do driver:
4. Para instalar manualmente o driver [beta] corrigido ( NÃO é recomendável):
Instalar os drivers da Nvidia a partir do
*.run
arquivo geralmente não é uma boa idéia. Tende a quebrar as coisas. Portanto, é melhor instalá-los a partir de um PPA, conforme descrito acima. No entanto, se você é uma aventura e deseja instalá-lo manualmente, esse é o processo que funcionou para mim com o Ubuntu 16.04 e um GTX650.Antes de instalar o driver corrigido, você DEVE desinstalar o driver proprietário atual e alternar para o driver Nouveau:
Certifique-se de reiniciar após a troca. SE VOCÊ NÃO DESINSTALAR O SEU CONTROLADOR PROPRIETÁRIO ATUAL, O NOVO CONTROLADOR CONFLITARÁ COM O ANTIGO E VOCÊ QUEBRARÁ AS COISAS!
Faça o download do arquivo do driver corrigido da Nvidia. Aqui está um link direto.
Salve o arquivo na sua pasta de downloads
Saia da sua sessão da GUI (você deve terminar na tela de login antes de continuar)
Inicie
tty1
com CTRL+ ALT+F1Entre com suas credenciais normais
Execute estes comandos:
Aceite o contrato de licença:
Ele reclamará que o script de pré-instalador fornecido pela distribuição falhou. De qualquer forma, continue:
Selecione Yesquando for perguntado se você deseja registrar o módulo do kernel com dkms:
Selecione Yesquando for perguntado se você deseja instalar as bibliotecas de compatibilidade de 32 bits:
Vai demorar um pouco para construir o módulo do kernel, então seja paciente!
Selecione Yesquando for perguntado se você deseja executar
nvidia-xconfig
:Selecione Okpara sair do instalador
Quase lá! Agora basta executar estes comandos:
Após a reinicialização do computador, abra as Configurações do Nvidia X Server. Com alguma sorte, você verá a nova versão do driver:
fonte
.run
arquivos não é realmente a maneira recomendada de fazer as coisas. Porém, o uso do driver 340 não é uma opção para pessoas com placas mais novas, como a série 10. Testei esta solução no meu próprio computador e funcionou bem.Esse problema está presente nos drivers 375 e 378 ...
Dado que simplesmente matar o processo de compiz corrige o problema de borda ruim, testei uma solução que funciona no meu sistema Ubuntu 16.04 sempre que o sistema é ativado.
Passo 1:
Eu criei um script chamado
fixbadborders
no diretório/lib/systemd/system-sleep
. Continha o seguinte:Passo 2:
Permitiu que o script tivesse permissão de execução com:
Para remover este script:
Todos os créditos vão para o Sun Bear que criou este comentário de script 13
fonte
A NVIDIA lançou uma versão atualizada do driver que corrigiu essa regressão. Qualquer driver após a versão 381.09 não terá mais esse problema, até que a NVIDIA atrapalhe novamente.
Até que o driver alcance os repositórios principais, eles podem ser baixados do PPA não oficial do driver NVIDIA. Isso garante que você não precisará mexer no instalador (que é amplamente considerado uma má idéia) ou no Nouveau. Da mesma forma, permitirá que os drivers sejam instalados / desinstalados, em
apt
vez da meia-configuração perigosa em que o instalador da NVIDIA deixa os drivers. Além disso, isso não causará nenhum loop ou erro de login, a menos que você tenha um sistema estranho. Para instalar, execute:Os drivers antigos serão desinstalados automaticamente e os novos serão carregados. Acompanhe reiniciando o computador (já que os drivers da NVIDIA precisam ser inseridos no kernel), e tudo deve funcionar bem. Você pode verificar se os drivers foram instalados corretamente executando o comando abaixo:
Certifique-se de reverter os patches descritos nesta postagem antes de atualizar para os drivers mais recentes. Por exemplo, se você instalou a versão corrigida do Unity, conforme descrito abaixo, execute este comando para voltar à versão normal:
Observe que você precisará
ppa-purge
instalar, o que pode ser feito da seguinte maneira:Se a atualização não for uma opção (cartão antigo demais, política da empresa etc.):
Kai-Heng Feng, do Launchpad, teve a gentileza de enviar uma versão do Unity para seu próprio PPA (
ppa:kaihengfeng/lp1292830
), que deve corrigir esse problema. A fim resolver este problema, apenas adicione seu PPA executando estes comandos:Depois de terminar, reinicie o sistema ou reinicie o X11 efetuando logout e, em seguida, faça login novamente.
Como alternativa, você também pode executar um dos seguintes procedimentos:
Se você estiver executando o NVIDIA Prime, poderá trocar para a placa Intel, que resolverá esse problema. Observe, no entanto, que isso impedirá o sistema de usar energia gráfica total.
De acordo com alguns comentários no relatório de erros , a atualização para o driver NVIDIA 367.57 deve resolver o problema completamente. Como isso não está mais presente nos PPAs, será necessário fazer o download diretamente da NVIDIA (64 bits) (32 bits) (ARM) de 32 bits .
fonte
graphics-drivers/ppa
PPA, esse pacote é um "pacote de transição paranvidia-375
, portanto, instalá-lo obterá automaticamente a versão 375 de buggy. Se você conhece uma fonte de onde obter o velho 367 driver, você deve incluí-lo em sua resposta.A solução proposta por Victor A. funciona bem. No entanto, observe que os scripts inseridos
/lib/systemd/system-sleep/
são executados quando o computador entra no modo de suspensão e quando ele é ativado. Dado que queremos apenas mais tarde, o uso do script proposto diminui o processo de inatividade desnecessariamente. Eu recomendo o seguinte:Um aviso, no entanto. Esse script (assim como o proposto por Victor A.) desabilitará a tela de solicitação de senha ao ativar, constituindo assim um risco à segurança.
fonte
Esse problema também foi corrigido no driver Nvidia 375.66, que está nos repositórios normais, e deve ser instalado pelas atualizações normais.
fonte
Esta não é uma solução completa, mas pode ser melhor do que usar
compiz --replace
ou reiniciar o compiz e estragar seus espaços de trabalho.Quando retomo da suspensão, faço o seguinte:
Isso recarregará o que parece ser texturas corrompidas na GPU. Se houver uma maneira de forçar automaticamente o recarregamento de texturas de tema no currículo, isso pode ser uma solução permanente.
fonte
Existe uma outra maneira de resolver esse problema. (Eu não recomendo se você tiver muitos processos em execução.)
Apenas mate o Xorg depois de acordar o computador.
Encontre o PID do Xorg por:
Quando você encontrar o pid do Xorg, pressione Ctrl + C para interromper o processo "top".
Vá para o root e mate o processo:
Depois disso, faça login na sua conta.
Aviso: isso fechará todos os seus aplicativos. O Firefox não apresenta problemas, apenas restaura todas as suas guias, mas não posso garantir outros aplicativos, então salve-os antes de fazer esse processo.
fonte
Tentei mudar o driver para o atualizado, mas ele estava estragando minha capacidade de aprender profundamente com o tensorflow, então voltei ao software de buggy original.
Isso acontece toda vez que eu acordo o Ubuntu de dormir. Acabei de abrir um terminal CTRL+ ALT+ Te digite
A tela é redefinida e a falha desaparece. Leva apenas alguns segundos. Você poderia até mesmo apelido lo em seu
~/.bashrc
comoalias kc='killall compiz'
assim você só tem que digitarkc
quando você quer executar o comando.fonte