Tela corrompida após hibernação - Existe outra maneira de atualizar a exibição do X11?

23

Quando eu restauro do modo de hibernação, a tela é frequentemente corrompida. Eu suspeito que a memória gráfica não está sendo salva. Suspend-to-ram funciona bem, caso contrário.

Também parece que o cache de fontes está corrompido, já que todas as letras estão corrompidas de forma consistente. O efeito parece ter como alvo uma fonte em um tamanho específico. Por exemplo. se a janela do meu terminal for atingida, a alteração da fonte e / ou do tamanho da fonte corrigirá, a menos que a fonte com esse tamanho já esteja danificada.

Se a fonte for usada em outro lugar (outros aplicativos, gerenciador de janelas etc.), o problema também estará lá. Às vezes, a fonte usada para os títulos das janelas é atingida, então todos os títulos das janelas mostram as mesmas letras corrompidas.

Fazendo logout e voltando novamente corrige , mas não quero fazer isso. Eu tenho logado, em seguida, hibernando, mas isso é mais esforço e elimina a maior parte dos benefícios da hibernação.

Existe outra maneira de atualizar a exibição do X11? A Ctrl + Alt + F1 … não conserte também. Ele alterna o terminal, mas não redesenha nada: apenas mostra a tela corrompida antiga.

Estou usando o Debian 6.

Nesta ocasião, o título da janela é ruim:

Conteúdodoterminalruim,masotítuloestá(ainda)bem:

    
por ctrl-alt-delor 06.06.2011 / 14:15

11 respostas

12

Eu tive uma situação semelhante com o meu laptop. A tela costumava ficar preta quando despertava da suspensão. Minha solução foi usar xrandr para redefinir meus monitores. Você precisa encontrar o comando xrandr que configura seu layout e o executa. Por exemplo, no meu sistema, eu tinha duas telas e isso configurava como eu queria:

xrandr --output DP-3 --auto --output VGA-0 --auto --right-of DP-3 --primary

Se você tiver apenas uma tela, tente desligá-la e ligá-la novamente:

xrandr --output VGA-1 --off; xrandr --output VGA-1 --auto;

Você pode ver os nomes de suas telas executando xrandr sem argumentos. No sistema que estou usando agora (uma tela VGA), recebo:

$ xrandr
Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 8192 x 8192
VGA-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 477mm x 268mm
   1920x1080      60.0*+
   1680x1050      60.0  
   1280x1024      75.0     60.0  
   1152x864       75.0  
   1024x768       75.1     60.0  
   800x600        75.0     60.3  
   640x480        75.0     60.0  
   720x400        70.1  
DVI-I-1 disconnected (normal left inverted right x axis y axis)

Depois de encontrar o comando certo, atribua um atalho para que você possa executá-lo mesmo quando a tela estiver em branco.

    
por 18.02.2015 / 23:09
6

No GNOME 3 , a Alt F2 r entra atualiza a GUI. A tecla Alt F2 inicia o prompt Executar comando , e o comando r força uma atualização.

    
por 02.06.2014 / 14:38
6

Você tentou o comando xrefresh ?

    
por 31.10.2011 / 09:51
5

Estou tendo esse problema também (Debian Squeeze e Wheezy).

Na minha experiência, isso acontece principalmente quando a maior parte da memória está cheia e o sistema está usando memória swap.

Como uma solução parcial: se eu alterar as fontes padrão, a corrupção desaparece. (Não é bom, porém, eu tenho que mudar novamente quando a corrupção reaparecer.)

(No Debian Wheezy isso é feito pelo gnome-tweak-tool.)

    
por 07.04.2012 / 15:47
4

Atualize para o Kernel 3.19. - Eu usei os pacotes de kernel principais do Ubuntu , que podem ser encontrado aqui:

link (funciona também no Ubuntu 14.04)

O seguinte comentário do relatório de erros mencionou

link

... e rastreou o commit com a seguinte mensagem:

link

"... desde que nós só vimos isso em gm45 e i965gm."

Eu tenho esse chipset Intel GM45 para dispositivos móveis com gráficos integrados. O laptop Acer do OP também foi vendido com esse chipset (nem todos).

(Não tem nada a ver com suspensão.)

    
por 27.02.2015 / 00:46
3

Se um driver não conseguir retomar um dispositivo corretamente, acredito que a única solução que você encontrará será a depuração e a identificação de onde está o problema, para que você possa decidir o que fazer a partir daí. Por exemplo, não vejo como você pode atualizar se a placa de vídeo não for reinicializada.

ACPI lida com suspender / resumir e exibir. Por exemplo, o seguinte problema da ACPI que ocorre em alguns ThinkPads pode abordar os sintomas que você está descrevendo:

When resuming from suspend-to-ram the text console displays may show garbage instead of actual text. The machine is otherwise still responsive and X displays fine. If all of this is true, then adding the kernel option acpi_sleep=s3_bios,s3_mode in your menu.lst or lilo.conf may solve the problem.

Problemas com o ACPI suspend-to-ram - ThinkWiki

Se você estiver usando o módulo thinkpad_acpi que a citação acima está abordando, isso pode ser tudo o que você precisa. Para obter mais informações sobre essa solução, consulte Suspend2Ram - Documentação do Powersave

First, there are several kernel parameters, that can be tried out. Just add them to your "kernel"-line in /boot/grub/menu.lst. More information about those can be found in /usr/src/linux/Documentation/power/video.txt.

Do video.txt:

During S3 resume, hardware needs to be reinitialized. For most devices, this is easy, and kernel driver knows how to do it. Unfortunately there's one exception: video card. Those are usually initialized by BIOS, and kernel does not have enough information to boot video card. (Kernel usually does not even contain video card driver -- vesafb and vgacon are widely used).

Mais em video.txt Consulte a tabela aqui para ver se um% co_de conhecido % está listado para o seu modelo de placa de vídeo.

Suspensão do Debian e KMS O wiki do Debian sugere desativar o KMS para um problema de "vídeo corrompido no currículo". 1

A very common issue found after the computer resumes is corrupted video (or black screen, or no LCD backlight). The first step is to check whether the system is still running, which can be simply done by pressing the Capslock button and check whether the Capslock LED is changing accordingly. If the system is still running, in most cases we need to add a video quirk for your video card.

Debian now has kernel mode setting (KMS) enabled by default for most Intel, nVidia and ATI video cards. But pm-utils' video quirk does [not] support KMS yet. So in most cases you should try disabling KMS first. The detail steps for your specific video card can be found on the KernelModesetting page.

After disabled KMS, if the video after resume still corrupts, you can try to suspend the system by using some video quirks. Read the manpage of the pm-suspend program for a very detail explanation of all the quirks available, and try the combinations of them from commandline. If you successfully find one combination of quirks that works for your system, you can add them into /usr/lib/pm-utils/video-quirks to make them permanent. At the same time, please help to file a bug against the pm-utils package with a patch about your changes so it can benefit the mass.

A common issue found on systems upgrading from old versions of Debian is the enabling of quirk-s3-bios freezes the system during suspend. If your system freezes during suspend, check the pm-suspend.log carefully after enabled debugging and make sure quirk-s3-bios is not used.

Se você acha que isso está relacionado ao seu problema, tente desativar o KMS conforme sugerido. Para inscrições para o seu cartão, veja KernelModesetting - Debian Wiki

Depuração suspensa

The log of suspend and resume processes are in file /var/log/pm-suspend.log. It contains moderately verbose information by default. More information can be enabled for debugging by inserting line export PM_DEBUG=true into the beginning of file /usr/lib/pm-utils/pm-functions.

Para mais, confira as informações sobre o recurso de teste do Kernel mencionado em Suspend - Debian Wiki também. Isso pode ajudá-lo a depurar e isolar o problema.

Alguns exemplos e mais informações detalhadas sobre depuração que podem ajudá-lo a "drivers que não conseguem suspender ou retomar seus dispositivos" estão disponíveis em link

Mais algumas ideias de depuração para acpi_sleep=<hack> em pm-utils - ArchWiki e link

Aqui está uma lista completa de Parâmetros do Kernel muitos sendo relevantes para acpi e suspender.

Boa sorte.

    
por 19.02.2015 / 13:11
2

Este parece ser um bug relatado, verifique o link a seguir.

No caso do Ubuntu , verifique este link

No caso de Debian ler este outro link especialmente o Corrigindo vídeo corrompido no currículo parte

Caso o problema esteja em um console de texto: Você tentou atualizar o cache de fontes?

fc-cache -f -v

    
por 19.02.2015 / 13:20
0

Isso é quase certo porque o driver gráfico possui bugs para o dispositivo de exibição. Provavelmente não importará muito o que é, porque de qualquer forma não é algo que você possa consertar. Mas você deve registrar um bug sobre o driver do kernel para o dispositivo (uma vez que você descubra o que é ( lspci pode ajudar aqui)).

Algo que você poderia tentar, como uma solução: quando sair do modo de hibernação, tente pressionar "ctrl-alt-F4" para alternar para outro terminal virtual e depois voltar (o que provavelmente é ctrl-alt-F1 ou ctrl-alt-F7 ou talvez F8). Isso pode fazer o suficiente de uma atualização de tela que fará a exibição se recuperar. Talvez.

    
por 06.06.2011 / 18:19
0

The Ctrl+Alt+F1… does not work

Bem… então tente emitir sudo chvt 1 , então mude de volta para a vitoria do Xorg usando Ctrl_Alt_Fn ou sudo chvt N (onde N é geralmente 7 ou 8). Caso chvt funcione, você pode até mesmo tentar roteirizar o script.

    
por 08.04.2012 / 06:37
0

Tente girar ou virar a tela com xrandr , por exemplo de cabeça para baixo e depois de volta ao normal. Isso pode ser suficiente para que seja totalmente redesenhado.

    
por 09.09.2011 / 23:48
-1

Tente Crtl alt - então Crtl alt + . Isso muda a resolução da tela para frente e para trás.

    
por 30.09.2011 / 21:57