O Chrome está congelando o Ubuntu ao abrir uma guia ou reiniciar

23

Isso só começou a acontecer ontem. Eu não mudei nada conscientemente, embora eu tenha ativado a atualização automática no Ubuntu.

Eu posso começar o cromo bem, ele vai funcionar por um tempo, mas depois eu abro uma guia e ele irá congelar tudo, exceto o mouse que eu ainda posso me mover. Eu não posso fazer nada (incluindo a mudança para ctrl-alt-fX), então a única opção é REISUB (ou hard-reset). Reiniciar o cromo depois de um tempo geralmente tem o mesmo efeito que abrir uma guia.

Eu tentei remover completamente o Chrome e remover a pasta de configurações antes de reinstalar a versão mais recente, mas isso não ajudou. Desativar todas as extensões não ajudou.

Estou executando o mais recente Ubuntu estável 14. 15gb ram, intel i7

Outra peculiaridade são as pequenas janelas de notificação que recebo do chrome, que geralmente mostram informações sobre um novo e-mail ou qualquer uma das notificações do plug-in, agora é apenas um bloco preto, sem conteúdo.

Existe algum log que eu possa procurar para encontrar algo sobre o acidente? Eu verifiquei o dmesg, mas isso não significa muito para mim:

dmesg | grep chrome

[  132.889813] nouveau E[chrome[2606]] multiple instances of buffer 125 on validation list
[  132.889818] nouveau E[chrome[2606]] validate_init
[  132.889819] nouveau E[chrome[2606]] validate: -22
[  422.162086] nouveau E[chrome[2606]] multiple instances of buffer 121 on validation list
[  422.162092] nouveau E[chrome[2606]] validate_init
[  422.162094] nouveau E[chrome[2606]] validate: -22
[  422.178322] nouveau E[  PGRAPH][0000:01:00.0] TRAP ch 5 [0x007f6f9000 chrome[2606]]
[  422.201707] nouveau E[  PGRAPH][0000:01:00.0] TRAP ch 5 [0x007f6f9000 chrome[2606]]
[  422.202702] nouveau E[  PGRAPH][0000:01:00.0] TRAP ch 5 [0x007f6f9000 chrome[2606]]
[  422.220245] nouveau E[  PGRAPH][0000:01:00.0] TRAP ch 5 [0x007f6f9000 chrome[2606]]
[  422.236486] nouveau E[  PGRAPH][0000:01:00.0] TRAP ch 5 [0x007f6f9000 chrome[2606]]
[  422.269815] nouveau E[  PGRAPH][0000:01:00.0] TRAP ch 5 [0x007f6f9000 chrome[2606]]
[  422.302031] nouveau E[  PGRAPH][0000:01:00.0] TRAP ch 5 [0x007f6f9000 chrome[2606]]
[  422.334962] nouveau E[  PGRAPH][0000:01:00.0] TRAP ch 5 [0x007f6f9000 chrome[2606]]
[  422.336436] nouveau E[  PGRAPH][0000:01:00.0] TRAP ch 5 [0x007f6f9000 chrome[2606]]
[  422.351666] nouveau E[  PGRAPH][0000:01:00.0] TRAP ch 5 [0x007f6f9000 chrome[2606]]
[  422.368438] nouveau E[  PGRAPH][0000:01:00.0] TRAP ch 5 [0x007f6f9000 chrome[2606]]

Eu não testei o cromo, li que semelhante acontece naquele. Outros tópicos que tenho lido sugerem mudar para o Firefox ou o cromo, mas isso não resolve o problema. Eu preciso do chrome por várias razões de trabalho e como funciona muito bem em casa na mesma versão do Ubuntu, então a lógica sugeriria que ele é solucionável.

Acho que está mais ligado à duração que o chrome está sendo executado e não ao ubuntu. Se eu iniciar o Ubuntu e iniciar o Chrome imediatamente, ele irá travar em uma nova guia após alguns minutos. Se eu não iniciar o cromo após a inicialização e só iniciar mais tarde, ele será executado corretamente e depois travará depois de ter sido executado pelos mesmos poucos minutos.

Muito obrigado

    
por Thomas Smart 23.07.2015 / 05:45

11 respostas

18

O problema está no Google Chrome v44. Você pode continuar trabalhando iniciando o Chrome sem aceleração de gpu:

google-chrome --disable-gpu

Ou removendo o chrome e instalando a versão imediatamente anterior:

sudo apt-get remove google-chrome-stable
wget http://mirror.pcbeta.com/google/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_43.0.2357.81-1_amd64.deb
sudo dpkg -i google-chrome-stable_43.0.2357.81-1_amd64.deb

Isso permitirá que você use o Chrome até que uma correção seja eliminada.

Observação: você não pode desativar a aceleração de gpu a partir do URL de configurações, pois ela congelará seu sistema imediatamente:

# DON'T go to (this might crash the system):
chrome://gpu
# or (this will definitely crash the system)
chrome://flags
    
por Fabio 23.07.2015 / 12:01
6

Eu tenho tido o mesmo problema com o Ubuntu 14.04 e o Chrome. Eu tenho placa gráfica nvidia geforce gtx 650. O problema parece ser, de fato, o driver nouveau da placa gráfica do Ubuntu. A correção para mim foi ir para as configurações do sistema - > Software & amp; Atualizações - > Drivers adicionais e escolha um driver proprietário da nvidia (ou qualquer cartão que você tenha) em vez do nouveau. Essa mudança também parece ter corrigido um problema que tive com o media player do youtube (pode ou não se aplicar a outros media players). A imagem de vídeo em movimento rápido, em particular, costumava parecer atualizar em seções com "linhas de falha" horizontais aparecendo. Parece ter ido embora também.

    
por hubbabubba 31.07.2015 / 19:48
2

Eu desinstalei o Chrome e, em seguida, excluí todos os meus arquivos de configuração e, nada, tive o mesmo problema. Isso funciona para mim no Ubuntu 14.04 64 bits

google-chrome --disable-gpu
    
por Amekare 30.07.2015 / 00:25
1

Verifique se você tem um bom status com Graphics Feature Status no navegador. Siga este link para verificar:

chrome://gpu/

Você deve ver todas as opções em verde Hardware accelerated . Se não, vá para

chrome://flags/

A primeira linha é o sinalizador para ativar Override software rendering list # ignore-gpu-blacklist .

Reinicie o navegador e verifique novamente o status Hardware accelerated .

Além disso, certifique-se de ter memória livre suficiente durante a execução do navegador

$ free
    
por Vitaliy Kulikov 23.07.2015 / 12:31
1

Eu resolvi isso substituindo o driver de vídeo nouveau pelos drivers nvidia conforme descrito aqui .

Não é necessário google-chrome --disable-gpu .

    
por Alexander Zeitler 02.08.2015 / 15:14
1

Postei um patch no LKML para contornar esse bug e foi informado de que o problema havia sido identificado como um bug do libdrm (não do Chrome).

link

Este problema está relacionado apenas a libdrm 2.40.6 e, a partir do link acima, existem outras aplicações que não são apenas o Chrome, que pode encontrar este mesmo erro com o nouveau.

É possível fazer o downgrade para a versão anterior de libdrm .

sudo apt-get install libdrm2=2.4.56-1~ubuntu2

Se você quiser "bloquear", ou seja, impedir que o sistema atualize automaticamente para a versão 2.6.40 novamente

sudo echo "package libdrm2" | sudo dpkg –set-selections

Eu fiz o downgrade para o 2.4.56 e posso verificar se o Chrome funciona como esperado, com a aceleração do gpu ativada.

    
por Bryan O'Donoghue 31.07.2015 / 02:08
0

Eu vi isso há algum tempo no meu sistema LFS autobuilt, totalmente sem recursos do Ubuntu (eu sou um esquisito sem vida, eu admito). Cue muitos gritando no log dmesg sobre bos corrompidos etc.

Para mim, outra solução que me permitiu manter a renderização acelerada por hardware na maioria das situações foi exportar LIBGL_DRI3_DISABLE=1 no ambiente antes de iniciar o Chromium. Parece que o DRI3 ainda não está pronto para o horário nobre ...

    
por Nix 27.07.2015 / 16:52
0

Remova e instale a versão anterior com ajuda dos seguintes comandos. Eu substituíi i386 em vez de amd64 e a instalação correu bem. obrigado pela ajuda.

sudo apt-get remove google-chrome-stable
wget http://mirror.pcbeta.com/google/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_43.0.2357.81-1_amd64.deb
sudo dpkg -i google-chrome-stable_43.0.2357.81-1_amd64.deb
    
por user472300 15.11.2015 / 05:22
0

Para mim, o problema foi resolvido limpando do gerenciador de senhas do chrome todas as senhas que eram duplicadas, expiradas, exageradas, longas, sem uso e assim por diante. Parece que a escolha de senhas muito complexas tende a travar ou congelar todo o sistema operacional e isso também acontece no sistema operacional Windows. Outra coisa que eu fiz eu definir meu swappiness para 0.

    
por Mihai Alex Ionescu 20.11.2015 / 00:25
0

Eu enfrentei o mesmo problema no meu Ubuntu 14.10, a solução é simplesmente matar o Chrome toda vez que ele comer a CPU, aqui está o meu script para fazer isso, funcionou no meu caso.

#!/bin/sh

#ps aux  | awk 'BEGIN { sum = 0 }  { sum += $3 }; END { print sum }'

# DON VI PHAN TRAM
MAX_ALLOWED_CPULOAD=50
MAX_ALLOWED_MEMLOAD=50
core_num=$(nproc)
MAX_ALLOWED_CPULOAD=$(expr $MAX_ALLOWED_CPULOAD \* $core_num)

counter=0
continue_high_cpuload_count=0
max_continue_alowed=10

print_cpu_load_with_pid(){
    cpuload=$(ps aux  | awk 'BEGIN { sum = 0 }  { sum += $3 }; END { print sum }')
    cpuloadpercent=$(echo "100 * $cpuload / $MAX_ALLOWED_CPULOAD" | bc)
    echo "checked at $counter times, cpuload = $cpuloadpercent %"
    counter=$((counter+1))
    #$(echo 12.45 10.35 | awk '{if ($1 < $2) print $1; else print $2}')
    decide=$(echo $cpuload $MAX_ALLOWED_CPULOAD | awk '{if ($1 > $2) print "true"; else print "false"}')
    if [ "true" = "$decide" ] ; then
        continue_high_cpuload_count=$((continue_high_cpuload_count+1))  
        echo "High cpuload detected, continue_counter = $continue_high_cpuload_count"
    elif [$continue_high_cpuload_count -gt 0 ]; then
        continue_high_cpuload_count=0
        echo "No longer detect hight cpu, reseting continue_counter..."
    fi

    if [ "$continue_high_cpuload_count" = "$max_continue_alowed"  ] ; then
        echo "Killing chrome..."
        kill -9 'ps -aux|grep chrome|awk '{print$2}''
    fi
}

while [ : ];do
    print_cpu_load_with_pid
    sleep 2
done
    
por user247893 29.07.2015 / 17:34
0

Eu geralmente gosto de usar o chrome, mas é o único software no meu Ubuntu que garante o congelamento do sistema operacional inteiro se for dado tempo suficiente para execução. E em algumas ocasiões, eu literalmente não posso fazer nada a não ser uma reinicialização a frio. Se eu já tinha outro TTY aberto ( Alt + Ctrl + Fn ) então eu posso ou não ser capaz de mudar para ele para emitir killall chrome , que irá corrigir o sistema operacional instantaneamente. Mesmo se eu já tivesse uma conexão SSH pendente. Às vezes, o cursor do mouse se moverá pela tela, mas absolutamente nada mais será responsivo. Às vezes nem o cursor do mouse.

De qualquer forma, descobri experimentalmente que a memória RAM acaba com o Chrome sendo usado; Alguns vazamentos de memória terríveis. Então, o que eu fiz para evitar que meu sistema operacional fique completamente congelado a ponto de não resgatar, é um pouco um DIY. Eu criei um script bash simples e instalei sob o crontab do meu usuário. Eu corro a cada minuto. Ele verifica a quantidade de RAM livre, e se for abaixo do meu limite definido (eu uso 200 MB), emite então killall chrome , 3 vezes consecutivas (apenas no caso). Depois disso, você acaba com o cromo saindo da sua tela, mas aparece uma caixa de diálogo informando o que aconteceu, a quantidade de memória que você deixou e quanto você tem agora depois de recuperá-lo do chrome. O script é o seguinte:

#!/bin/sh
#SETTINGS:
MIN_RAM_BEFORE_KILLING_CHROME_MB=200
#DATA COLLECTION:
FREE_RAM=$(free -mo | tr -s ' ' | cut -d ' ' -f 4 | awk '$0 == "free" {i=1;next};i && i++ <= 1')
echo "Free RAM: $FREE_RAM"
#ACTION:
if [ $FREE_RAM -lt $MIN_RAM_BEFORE_KILLING_CHROME_MB ]; then
    echo "time to kill chrome...";
    killall chrome &
    sleep 1
    killall chrome &
    sleep 1
    killall chrome &
    FREE_RAM2=$(free -mo | tr -s ' ' | cut -d ' ' -f 4 | awk '$0 == "free" {i=1;next};i && i++ <= 1')
    DISPLAY=:0 nohup zenity --info --text="Chrome was killed, because your RAM had only $FREE_RAM MB free.\nNow you have $FREE_RAM2 MB free."  2>/dev/null &
else
    echo "Not yet. Will kill chrome when RAM goes under $MIN_RAM_BEFORE_KILLING_CHROME_MB.";    
fi;
#INSTALLATION:
# crontab -u <username> -e
# then add this script

Então, quando eu alcanço um mínimo crítico na minha RAM, meu cromo é eliminado e vejo isso:

    
por Kris Jace 02.03.2017 / 09:12